Add a reputation / badges system to Drupal.org

The goal of this sub-project is to build an expertise/reputation system which will:

a. expose all the different types of contributions (including non-code ones, which can't be measured by simply counting data in database)

b. expose field of expertise of individuals, to make it easier to understand "who is who", who is active in which field, whose opinion is backed up by expertise in this specific field

c. encourage more contributions, especially non-code ones, by recognizing them, showing that community values them, giving feedback to the new contributors when their contribution is useful and motivating them to continue


Submitted by

Related *.drupal.org issue/discussion: http://groups.drupal.org/node/209448

Stage: In Progress

Feedback Score

77 votes
Voting Disabled

Idea Details

Vote Activity (latest 20 votes)

  1. Upvoted
  2. Upvoted
  3. Upvoted
  4. Upvoted
  5. Upvoted
  6. Upvoted
  7. Upvoted
  8. Upvoted
  9. Upvoted
  10. Upvoted
  11. Upvoted
  12. Upvoted
  13. Upvoted
  14. Downvoted
  15. Upvoted
  16. Upvoted
  17. Upvoted
  18. Upvoted
  19. Upvoted
  20. Upvoted
(latest 20 votes)


  1. Status Changed from Active to In Progress
  2. The idea was posted


  1. Comment
    Jeremy Przasnyski
    ( Pinned Moderator )

    Hi - I'm CTO of badgefarm & ideascale. We'd like to create a drupal plugin for turn-key gamification in drupal hosted sites. BadgeFarm is already built into this ideascale community. BadgeFarm is designed to have portable profiles, so the reputation being built up here (in drupal-association.ideascale.com) could be shared with the drupal.org. I'd love some help with this if a drupal expert is out there who can help out. BadgeFarm has a full, undocumented REST API that would be simple to integrate with.

  2. Comment
    Lin Clark

    I agree that we need to bring non-code contributions into the limelight, but I worry that Drupal.org sanctioned badges that correlate to merit will bring too much gamification to Drupal contributions.

    However, I think that an unofficial program would be great. Then its clear that it isn't really a measure of how good people are, but just a game to help people get experience and challenge themselves, like the Girl Scouts badges

  3. Comment

    I agree that it could be open to gaming but I think it's still useful. Folks that haven't been around forever and don't hang out on IRC often don't really know who the "big names" are. Sure, anyone can give good advice and you don't have to be a "big name" but, when you're on the receiving end, it's nice to know if the person answering you has been doing this for years or started the day before you.

    Comments on this comment

    1. Comment

      In a certain sense, d.o already does this with the profile pages (I attended ____, I contributed modules (see # of commits), etc...). Also, the number of commits (especially for recent contributions) on a project are displayed on the block on the upper right side. Since the information is already there, it doesn't seem necessary. The badges might add unnecessary weight. I guess that this is more of a rhetorical read of what the badges would do.

    2. Comment
      Community Member

      I can write on my Drupal profile I can write that I invented the question mark. As a noob it's hard to tell what's user input, and what's not. Alot of the stuff on there is a simple check box.

  4. Comment

    Nothing wrong with adding a bit of a game to a task. I still remember back when I was a boyscout, on camp, we peeled potatoes. Afterwards, the floor was littered with peels and had to pick up. One of our leaders said: "Whoever picks up the most peels, wins!" There was nothing connected to winning besides the winning itself, but everybody suddenly competed against each other and had fun picking up peels (and half mocking the suggestion). It turned a boring task into something fun and enjoyable, simply by adding a bit of a game element to it. If we can incorporate that into Drupal contributions, so much the better! What we should avoid, though, is very active, helpful people never being able to catch up to people who once were active and started slacking off, or it becoming an "everbody vs. everybody" kinda thing.

    Comments on this comment

    1. Comment
      Lin Clark

      I think the problem is figuring out how to weight contributions. Unfortunately, we don't have something analogous to potato peels here, because each contribution is hugely different. Should fixing a typo be worth the same as a major documentation overhaul?

    2. Comment

      That's what a badge system does. Think "achievements" in plenty of games nowadays. You helped out 20 people on the forums for the first time? Tâdaa! Shiny new badge for you! You submitted your fifth module? Tâdaa! Shiny new badge for you! It actually works to motivate people and puts a bit of a game thing into the whole system (strangely enough...)

    3. Comment

      There is no need to build a reputation system, just copy the best out there, drupal.stackexchange.com. There is also a drupal module that could be used, http://drupal.org/project/answers

      Also, let the community decide how much an answer is worth by enabling votes on answers...

    4. Comment
      Community Member

      *Congratulations your shiny new badge is now silver* =D silver, gold, platinum. People will game any system. If they're gaming drupal, aren't we getting a better drupal?

  5. Comment

    I just think the idea is kind of tawdy. I am all about recognizing all sorts of contributions--I spend a lot of my time trying to foster and recognize certain kinds of non-commit-credit contribution--but I don't think some reputation system is going to help with that. I also don't like things that try to mark certain contributors as being better than others in an "official" way.

    Comments on this comment

    1. Comment

      I think we should avoid the "better" connotation. "More experienced" is what I was thinking. I'm not too into ranking or points or stuff like that. But a "Core contributor" badge and a "Project maintainer" badge and a "Doc team" badge... Stuff like that distinguishes contributors in a good way rather than in a "I have more points than you" way.

  6. Comment

    If done correctly I think that this could be done splendidly. However, if certifiedtorock is any indicator, this is something that is extremely difficult to quantify in any meaningful way.

    I think this is already done on the user pages though. The badges are text (excluding the Drupal Association badge).

  7. Comment
    Sean Bannister

    This has amazing potential to get more people active in support and documentation, I find myself sometimes helping people on stackexchange sites for this exact same reason.

  8. Comment
    Yonas Yanfa

    Badges and points are great. Avoid leadership score boards.

  9. Comment

    I just got a mail from Ideascale to say that "my status in Drupal Association has changed" I was given a banana called Warhol :D Got nooooo idea why though.

  10. Comment
    Achton Netherclift

    Can't argue with potato peels. Although ..

    I agree that CTR must be trying to do something akin to this, at least according to my understanding of the original idea here.

    I think what michelle said up there makes sense, and the reps/badges need to be quantified somehow. However, it should display as simply: "Randy is a huge docs contributor, has a few modules under his belt and been around for 2½ years." There could be badges with varying intensity/size for each group of contributions that add to the equation, so Randy would have a shiny docs badge, and a slightly dull modules badge.

  11. Comment

    Great discussion! To sum things up(from my understanding), I see this:

    1.For the most part everyone would agree with it being a really cool idea and that it could indeed get more people active and involved and excited. (@Raf- I checked on the Warhol banana and it's: The Warhol is a member who has spent 15 minutes on {IdeaScale}.) Now I want one:) See it works:)

    2.There can also be some negative side effects if not implemented properly like it being some kind of competition, or having it not quantified in a fair way for all sorts of users.

    One thing I would be concerned about would be this: What if an individual is an awesome developer, but is better suited to just do the work and have others handle the people aspect of it. If people look at a lower intensity/size of a badge like providing support or writing docs, and they may see someone else who has more well rounded badges in every area, would this cause wrong judgements? I mean some people are wired to just do the work and it's why they are awesome at it, and others are more people oriented, while others are great writers, and some lucky people have it all. I just think we all have different gifts and personality types, and I think that needs to be not only okay, but appreciated. I am not really sure if negative judgements could potentially happen or not, just throwing it out there for feedback.

    Comments on this comment

    1. Comment

      I just got my banana:) whoo-hoo!

    2. Comment

      I don't think that'd be an issue, some people having a shiny badge for one field and none for any other, while others having dull badges for all fields. It's the difference between generalists and specialists. In the end, both are necessary, and it would actually immediately show which one of the two you're dealing with. It also means that, if you're dealing with a generalist, his opinion might count more to you than a specialist outside his field of expertise, while a specialist's opinion might count more to you than a generalist's opinion within that specialist's field of expertise.

  12. Comment

    Definitely support this idea. Yes, a simple system is prone to "karma whoring." But it doesn't take much imagination to make the requirements harder to game. Remember, we don't have to stop all karma whoring, just make sure that what whoring that takes place is limited and not damaging to the community.

    For example:

    Documentation points: we want to encourage documentation, especially by code committers who will really know the module and are likely to care about the quality of docs. You can make points responsive to whether someone is a committer pretty simply. Or have flags on doco pages for "this helped me" and "this wasn't helpful", and use those flags to calculate someone's karma for writing that page. It's hard for whoring to wreck a system that gives you a fraction of the points if you're not a committer.

    Comment points: simply, the more you comment on issue queues the more points you are awarded. If a comment is deleted from a thread, you lose double points. Or again allow up/downvotes on individual comments and use those to calculate comment points. Extra points if you comment multiple times in the same thread, encouraging people to come back and discuss.

    Code points: points for every patch submitted that passes testing. Double points if the patch is accepted. Points for every commit into a non-sandbox project. Points for creating a sandbox project that is git cloned by more than 2 people.

    None of these would be hard to implement... and we haven't even thought about display options. For instance, your personal points scores could only be visible to you, and all other people can see are the badges you've earned for "project maintainer", "frequent commenter", and "documentation god".

    Comments on this comment

    1. Comment
      Community Member

      This helped/not helped... AWESOME! and raises flags/issues for the docs team to put in extra effort... ... I hope someone is taking notes --^

      Not to mention the badges for Document campaigns, minor bug fix campaign Q1 ... Wrap as many badges up in Drupal releases, so when the next release comes out it can start over...

  13. Comment

    A +1 to 'achievement badging', encouraging people to increase their level of contribution ... essentially competing against theirselves. In general, achievements are pretty black and white.

    I'm less enthusiastic about any sort of public 'point' or 'rating' system which can be used to as a comparison to the next guy, which is where you start to run into criticism of the algorithm based on each individual's interpretation of what types of contribution should be considered more important than others.

    Comments on this comment

    1. Comment
      Community Member

      Exactly, but if I look at your profile and compare it to mine... I'm gonna get badge-envy and start thinking I can get that badge! Boom: Drupal improvement...

  14. Comment

    It certainly seems to make this site more interesting.

  15. Comment
    webchick ( Idea Submitter )

    Marking "in progress", per tvn. She is working on this. :)

  16. Comment

    Another source of badges might be static analysis of the repositories. In theory, it might be useful to know who has experience writing hook_whatever code.

    Also, in terms of achievements and how to structure them, perhaps we could do something like what Github has done with Service Hooks (https://github.com/github/github-services), and acquia cloud has done with cloudAPI (https://github.com/acquia/cloud-hooks). Hard to think how this might work for drupal, but might help make it inclusive and remove bottlenecks. Obviously, would need to have some was to vote up the good achievements for inclusion.

    But yeah, the main suggestion is to democratize the achievement system somehow.