Ask Your Question
1

could askbot use percentage-based values for karma (and other) thresholds?

asked Oct 18 '10

niles gravatar image niles
463 3 15

updated Oct 18 '10

I've been thinking again about the karma thresholds for user permissions, and the numerical values attached to badges . . . I know these are configurable, but I wonder if it would be useful for the defaults to be percentages of the total site activity, rather than specific values. Then new communities using askbot wouldn't have to re-set the thresholds as they grow (if they even bother to lower them in the first place). Of course there would have to be some absolute minimum values, for when the site is brand new, but I think these should be small.

Here's one proposal: Let U be the top 50% of users (that is, the set of their karma values). Then set the following thresholds to gain the following priveleges:

  • open and close own questions: 100 or minimum of U
  • retag other's questions: 200 or top 20% of U
  • edit community wiki questions: 200 or top 10% of U
  • edit any answer: 400 or top 5% of U
  • delete any comment: 1000 or top 2% of U

Since a user may fall outside of a given percentage (as the community grows), there should be some (lower) threshold to lose each privelege. It could be zero, if you think that people should never lose a privelege once they've gained it, but the minimum value of U would probably be a more reasonable threshold. Also, U could be recalculated monthly rather than, say, daily or hourly, to make the numbers fluctuate less. Or, if you want to take this idea to an extreme, U could be recalculated every t days, where t is 10% of the site lifetime.

A similar principle could be applied to the badges: getting the "nice question" badge could require having your answer upvoted by 10% of the total number of users.


As a last remark, I think that the particular thresholds should still be configurable; the new feature here is being able to set them by percentage, rather than by absolute number only, and then setting the defaults that way (better for new askbot communities). (And, by the way, I haven't actually looked at a single line of askbot code, so forgive me and let me know if this is already possible. :)

Comments

I think for the re-tag operation, instead of removing tags, there could be a second row of moderator added tags. If there is a duplicate (similar name), perhaps it could be left in place, but grayed to indicate change recommended. ccanonc (Oct 18 '10)
Is the delete operation really a hide operation? It's good to keep data around for auditing purposes. ccanonc (Oct 18 '10)
For the edit-any-answer operation, I think the edited should be highlighted and annotated so that it is clear that it is a moderator change. Otherwise, users will complain about things which they did not say/type. ccanonc (Oct 18 '10)

2 Answers

Sort by ยป oldest newest most voted
1
niles has selected this answer as correct

answered Oct 18 '10

ccanonc gravatar image ccanonc
313 3 10

In addition to my comments above, I think another useful metric of positive activity is a moving average of the first derivative of karma with respect to time, and possibly other variables with respect to time (Recent Karma Velocity!). A moving average, however weighted, has some advantages (as long as you have that sliding window of time, it keeps people incentivized to keep contributing.) Perhaps a first step towards this would be to show the moving average of the first derivative (with site configurable time interval of course) in the karma history. Then perhaps draw up some proposals based upon observed behavior.

link

Comments

Right now I'm wondering how page views are counted. Questions with high view counts have a corresponding proportionality of popularity, however, it is often the answers that draw the views(!). =) ccanonc (Oct 18 '10)
The views are counted in a "humanized" way. If you've seen the page as it is your consequent views are not counted. If I modify the page and you look at it again, that view will be counted. Also robot visits are not counted as far as it is possible. Evgeny (Oct 18 '10)
Are non-logged-in users counted? ccanonc (Oct 18 '10)
Yes, anonymous users are counted per-session. Evgeny (Oct 18 '10)
So, if someone cleared their cookies, they could drive up views? wget could be directed to do this infinitely. ccanonc (Oct 18 '10)
see 3 more comments
1
niles has selected this answer as correct

answered Oct 18 '10

Evgeny gravatar image Evgeny flag of Chile
6665 31 49 95
http://askbot.org/

updated Oct 18 '10

This can be experimented with, the easiest approach will be to re-assess the barriers automatically about once a day. It's a lot easier than hard-coding the logic into a whole bunch of tests and assertions of type assert_user_can_do_X.

If anyone is interested to make this work - one can write a management command that analyzes the karma of users and adjusts the settings accordingly.

Management commands are located in directory askbot/management/commands.

Available minimum rep settings are in askbot/conf/minimum_reputation.py.

Say if you want to update setting MIN_REP_TO_VOTE_UP you could code like:

#import askbot live settings
from askbot.conf import settings

settings.update('MIN_REP_TO_VOTE_UP', some_new_value)

The management command is then run via cron job:

python manage.py reassess_karma_barriers

It's best to try and see how this will work. It's not obvious how people will react to having some privileges come and go based on their "karma" standing relative to others.

link

Comments

I'm sure over time, incrementally you will find a close to optimal solution. ccanonc (Oct 18 '10)

Your answer

Please start posting your answer anonymously - your answer will be saved within the current session and published after you log in or create a new account. Please try to give a substantial answer, for discussions, please use comments and please do remember to vote (after you log in)!
[hide preview]

Question tools

Follow
1 follower

subscribe to rss feed

Stats

Asked: Oct 18 '10

Seen: 40 times

Last updated: Oct 18 '10