[foaf-dev] Fwd: [StatusNet-dev] User Karma
danbri at danbri.org
Fri Nov 27 08:10:34 CET 2009
Interesting discussion of karma (well not the religious kind) over on
the statusnet / identi.ca list...
Begin forwarded message:
> From: Jon Phillips <jon at status.net>
> Date: 27 November 2009 06:35:33 CET
> To: Christopher Vollick <chris at controlyourself.ca>
> Cc: statusnet-dev <statusnet-dev at lists.status.net>
> Subject: Re: [StatusNet-dev] User Karma
> <toppost />
> This is super cool!
> I wrote-up a high level spec of what I'd like to see with karma in
> allowing people to track different types of karma, similar to some
> I like that your system is to be used for spam control, etc, but
> hey, we should just start the global karma from 0, and allow for
> users to give karma themselves.
> Also, hey, gaming the system, might allow for some cool results,
> depending upon how its gamed. Of course, a scenario where the
> spammers can game a system like I describe, might put us right back
> in the same boat, but still interesting.
> Curious your thoughts on what I propose and how your system might be
> adapted for this usage.
> My real intent is to use karma as a type of point system or game/
> task system, a way to drive traffic and interest.
> On Thu, Nov 26, 2009 at 7:39 AM, Christopher Vollick <chris at controlyourself.ca
> > wrote:
> ** This email gets kind of long, rambley, and a little bit
> technical. Read as much of it as you like, and feel free to ignore
> the rest **
> So, today I woke up and felt like writing a User Karma thing.
> So, I did: http://gitorious.org/~cvollick/statusnet/cvollicks-clone/commits/karma
> It's intended to be for Spam Things.
> The way it currently works is this:
> When User A subscribes to User B, User B's Karma increases by 1/10th
> of User A's (Assuming it's positive), by default.
> When they unsubscribe again those points are by default removed.
> The same when one of their notices gets faved.
> When a user gets blocked their Karma goes down by 1/10th of User A's.
> When a user gets blocked by a group it's 1/50th the blocking user's
> I did this because I figured that people are more likely to be
> blocked by a group for legitimate reasons that to be blocked by
> This required adding some more Events.
> Having added 4 or so of then in occasionally questionable ways, I
> feel like there might be a better way.
> I've capped Karma at -1000 and 1000.
> This was so that popular people like Evan and BUGabundo don't end up
> with, like, 1 500 000 000 karma.
> Then, with a single fave one of you Titans would descend from Heaven
> and give but a taste of your power to mortals who amuse you.
> Or, I feel bad for the person who one of the Titans decides to
> block, and completely destroys their account.
> So, the "Karma" plugin is just infrastructure, it only maintains
> Karma, but doesn't do anything with it.
> So, I wrote "KarmaModerator" to demonstrate my vision for Karma.
> KarmaModerator is a second plugin that emulates sandboxing a user
> when their karma drops below 0 and emulates silencing a user when
> their karma drops below -500.
> At no point does it autodelete their account, but it would put them
> out of commission until they can be dealt with.
> I could have used normal silence and sandbox, but I didn't want to
> interfere with the other methods of sandboxing and silencing.
> That could have been the wrong thing to do, time (And Evan) will tell.
> I tried to make a system that was not gameable.
> As a result, there isn't really any boot strapping.
> There is nothing that you should be able to do that generates Karma
> out of nowhere. It's all currently dependent on existing karma.
> This was so that newly created accounts aren't capable of wrecking
> In this system, I'll admit, if a spammer were ever able to get a
> significant amount of power somehow, he could do some damage to the
> lesser mortals.
> It would take a concerted effort of might to bring down one of the
> Titans, though.
> With the 1000 cap, it would take 10 people all with 1000 points
> blocking someone with 1000 points to even get them blacklisted.
> Currently nothing costs.
> It's possible that something like blocking requires spending Karma.
> I decided against that for now.
> Back to bootstrapping:
> So, I'm planning on writing a script that takes the existing system
> and generates a rough Karma for existing accounts based on a few
> initial values.
> For example, it's probably be like "Take the top 10 most popular
> accounts and give them each max karma. Now, pretend that they all
> just started following all the people they're following. Then
> pretend that they all just started blocking everyone they've
> blocked. Pretend they've all just faved all the things they've faved."
> That'd probably generate some fairly fair scores off the bat, and
> the system can take over from there with everyone else.
> Also, there are currently ways to game the system kind.
> Of course, two people could fave all of each other's notices in turn
> gaining popularity slowly. (This is only possible once they have
> over 10 karma)
> A lot of the gaming I've considered involves a chain of following
> and unfollowing.
> I considered writing another Plugin that would implement a history
> for this, so once I follow someone my Karma will be snapshot and any
> time I follow or unfollow them it will be that value.
> This is to fix an issue I considered where I start an account and
> follow someone, giving them 0/10, or 0 points.
> Then I become popular, and then when I decide to unfollow them,
> perhaps with no ill intentions, it reduces their karma by 1000/10,
> or 100.
> Currently it's my feeling that only Moderators should be able to
> even see Karma.
> Other than that it's just a hidden value that most people don't even
> really know about.
> This makes it harder to game, because you can't see your progress.
> Anyway, this is just the first iteration.
> I mostly just wanted to write it, so I did.
> There are probably far better ways of doing most of the things I
> did, but it's always easier to augment then to create.
> So, what do you think?
> StatusNet-dev mailing list
> StatusNet-dev at lists.status.net
> Jon Phillips
> +1.415.830.3884 (sf/global)
> +86.134.3957.2035 (china)
> Sent from Ho Chi Minh City, Vietnam
> StatusNet-dev mailing list
> StatusNet-dev at lists.status.net
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the foaf-dev