Why I think another feature is needed:

There are currently 2 primary methods of gamification for the site: Reputation and Badges. (Hats seem like a tweaked form of badges, and as they're seasonal, don't they go away soon?...)

Reputation most strongly incentivizes good answers, (which is certainly valuable), then good questions (also valuable, but perhaps gamed too much,), and to a much smaller degree, accepted edits.

Badges, once earned, are kept forever, and repeated earns are nice incentives for long-running expert users, but again primarily reward the questions and answers.

But what have you done for me lately?

The current system mostly rewards putting in some positive effort to ask/answer questions, then one may go away as time accumulates even more points as people find answers to their questions from material you've posted. How do we reward recency? Thanks for everything you did a year ago, but where did you go? Have you been helping the site? Reviewing stuff maybe? Letting others get the easy quick answers mostly, but voting up stuff that's good and down stuff that's bad?

Are you a good Stackoverflow citizen?

The current system doesn't reward good comments (particularly on why questions or answers are bad) beyond the localized upvotes on the comment.

I think it would be very valuable to the site to give an indicator of the recent less-tangible user contributions to the quality of the site (and thus an indication of the value of the user to the health of the site).

Have qualified programmers with good intentions a good enough reason to stick around and learn the ropes?

I personally know qualified programmers with good local reputations that have been turned off by the difficulty of gaining acceptance and learning the way the site works. I think they're quite willing to take their lumps until they get it, but they get discouraged in the learning process that gives them little to no recognition for their recent efforts. We need a reward system that encourages them to stick with it until they get it.

The question is, how do we fill these gaps?

My favourite idea is a health bar based on activity, which I elaborate on in an answer below. My next favourite idea is a balanced scorecard (see Wikipedia, or just about any edition of the Harvard Business Review.) I'll get around to making hypotheticals on that eventually.

This question is made in the spirit of helping my favorite resource for canonical, if unofficial, specific programming advice. Recommendations should be possible. Stackoverflow can determine if they are practical.

  • 2
    Related: Replace accept rate with citizenship level
    – jscs
    Commented Dec 29, 2013 at 5:05
  • That's one of the ones I read, but it doesn't really answer the recency issue, and this is a more generalized call for proposals. I'll add an answer that mentions this.
    – Aaron Hall
    Commented Dec 29, 2013 at 5:18

2 Answers 2


A Karmic Activity Score that decays over time

The score I propose should work like a citizenship score, and reward recent positive behavior.

The score should be as a percentage, and decay over time, and not reflect beyond the past 3 to 6 months of activity.

Possible scores would thus range from 0.0 to 100.0.

It would have a floor equal to 25-50% of the user's reputation percentile rank.

Behaviors to reward

  • Just Showing Up gets 1 point per day, if score is less than 50.
  • Up to five votes per day earns a point each (Downvotes cost a reputation point, so seems fair to offset that a bit by applying this to downvotes as well).
  • Explanation of Downvotes: If a comment is made after/with a downvote, the user earns a point.
  • Good Comments: If a user makes comments that are upvoted, they earn a point per upvote.
  • Accepted Edits: 1 to 2 points (further reward site improvement for an activity that has lasting value for the site, but temporary value for the user)
  • Helpful Flags: 1 to 2 points for this.
  • Reviews: 1 to 2 points
  • Any other cultivating activity that doesn't directly contribute to reputation.

Decay System

Each full point decays by one tenth of a percent every X (7?) days until it reaches the user's floor (again, based on reputation percentile rank).

Display System: Health Bar

The score should display as a colored health bar (maybe mouseover for the precise number), perhaps under the user's profile pic. Or above the badge count, or under or behind the name.

Stackoverflow Health Bar

The Value of This System

  1. It rewards recent good behaviour across the site.
  2. It will help mitigate some of the unhealthy competitiveness around certain hot tags by giving users something else to focus on to increase positive interactions.
  3. It will provide more context for experienced users to gauge unfamiliar or new users.
  4. It will give newer users with less to offer something else to focus on other than reputation while they learn the ropes.
  5. It offers a balanced approach to rewarding a variety of activities while users might focus on a few things that they are good at, while a balanced scorecard would penalize a highly focused user.

Replace Accept Rate with Citizenship Level

This question, posed as a proposal by Jeff Atwood (love his blog), suggests something akin to my favorite solution, but does not include recency. With a 178 positive vote score, I'd say it's a popular idea.

Replace accept rate with citizenship level

Also, accept rate has been removed, making it a bit dated.

Here's a relevant quote:

Going forward I would much prefer that we retired accept rate in favor of a more general metric that covers a variety of "citizenship" metrics that do not result in rep.

  • Does the user vote?
  • Does the user accept answers?
  • Does the user answer questions?
  • Does the user edit or suggest edits on questions?
  • Does the user flag stuff?

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .