Zero-based karma coming through

post by Eliezer Yudkowsky (Eliezer_Yudkowsky) · 2009-04-08T01:19:18.700Z · LW · GW · Legacy · 40 comments

Our friends at Tricycle will push through a zero-based karma system (no self-voting possible) sometime this evening.  At present this will only cover future posts/comments - they may go back and revise history some time in the indefinite future (or not), but apparently that would be overly complicated for now.  We'll see how this works.

40 comments

Comments sorted by top scores.

comment by wmoore · 2009-04-22T06:28:33.350Z · LW(p) · GW(p)

We've just deployed another related change: Now you can only cast as many down votes as your karma value.

Replies from: GuySrinivasan, Vladimir_Nesov, MBlume
comment by GuySrinivasan · 2009-04-22T06:45:04.119Z · LW(p) · GW(p)

I would assume you can only cast as many up votes as your karma value, too?

I'm not sure what the change accomplishes. Was there a thread on this I missed?

ETA: capping the up votes similarly will produce bad effects. :) But I'm still worried this tells legitimate lurkers "contribute written comments or we don't want to know when you think a comment/post is poor!"

Replies from: wmoore
comment by wmoore · 2009-04-22T07:32:38.363Z · LW(p) · GW(p)

Up votes aren't capped but your point about lurkers is interesting. The primary motivation for the change is to stop it being easy to just register an account then down vote everything you can find.

comment by Vladimir_Nesov · 2009-04-22T13:09:55.795Z · LW(p) · GW(p)

Then it should be possible to see how many down votes I've cast, to know how many are left. In practice, I expect that the number of downvotes is significantly less than the amount of Karma, but I'm not sure. If this is true, then the limitation is roughly equivalent to simply prohibiting people with Karma less than a threshold to downvote.

Replies from: wmoore
comment by wmoore · 2009-04-22T22:59:39.083Z · LW(p) · GW(p)

You are notified when you reach the limit by a message stating how many down votes you've made and what your current karma is. Until then I imagine you should not let this limit influence you:

Note: It is possible to see this message and the down vote count be greater than the karma due its dynamic nature.

Replies from: Vladimir_Nesov, Vladimir_Nesov
comment by Vladimir_Nesov · 2009-04-23T00:15:16.383Z · LW(p) · GW(p)

You are notified when you reach the limit by a message stating how many down votes you've made and what your current karma is. Until then I imagine you should not let this limit influence you:

I disagree, I want to reserve that power for where I see fit to apply it. I would prefer to calibrate my behavior, so that I won't be left out unexpectedly.

Replies from: mattnewport
comment by mattnewport · 2009-04-23T00:43:13.203Z · LW(p) · GW(p)

If you reach the limit and encounter a post you really want to downvote you can always un-downvote a previous comment that you dislike less. That would be easier if the 'disliked' link showed comments as well as top level posts.

Replies from: Vladimir_Nesov
comment by Vladimir_Nesov · 2009-04-23T00:49:18.103Z · LW(p) · GW(p)

Yes, that's an obvious solution, but placing yourself in that situation is unnecessary, and implementing the amendment you suggest is a waste of time where the situation could be avoided in the first place.

Replies from: mattnewport
comment by mattnewport · 2009-04-23T00:59:18.874Z · LW(p) · GW(p)

You seem to be thinking of things from the point of view of 'I don't want to suddenly find I can't downvote', where I'm thinking of it from the point of view of 'what is likely to lead to the most informative karma scores'. I don't think you're wrong given where you seem to be coming from but I'm not looking at it from the same perspective.

comment by Vladimir_Nesov · 2009-04-23T00:27:58.422Z · LW(p) · GW(p)

Also interesting: how did you upload an image in the comment? Is it an admins-only hack?

Replies from: wmoore
comment by wmoore · 2009-04-23T00:43:38.552Z · LW(p) · GW(p)

Just standard Markdown:

![Alt text](http://example.com/path/to/img.jpg)

Check your inbox.

Replies from: Vladimir_Nesov
comment by Vladimir_Nesov · 2009-04-23T00:55:53.722Z · LW(p) · GW(p)

Well, that I know. The question was about uploading.

comment by MBlume · 2009-04-22T06:41:23.794Z · LW(p) · GW(p)

I like this

comment by Kaj_Sotala · 2009-04-08T09:18:16.205Z · LW(p) · GW(p)

This'll take getting some used to, mentally recalibrating myself to not consider 0 -point comments as bad ones. But a good change, nonetheless. :)

comment by Pablo (Pablo_Stafforini) · 2009-04-08T03:42:19.199Z · LW(p) · GW(p)

Great. I really hope that, when time permits, the folks at Tricycle can apply this retroactively as well. There are a few users who, despite posting comments of low quality, manage to have high karmas due to sheer frequency of commenting.

Replies from: dclayh, dfranke
comment by dclayh · 2009-04-08T03:55:20.419Z · LW(p) · GW(p)

I don't know, maybe an early-adopter karma bonus is appropriate :)

Replies from: dfranke
comment by dfranke · 2009-04-08T06:06:13.916Z · LW(p) · GW(p)

Reddit had one. In the very early days of Reddit, one upvote was one karma point. Now they have some fancy-pants weighting algorithm that translates to much less than one point per vote.

comment by dfranke · 2009-04-08T06:12:11.629Z · LW(p) · GW(p)

I don't see why it would be at all complicated to do. Shouldn't it just be something like

UPDATE comments c SET c.score = c.score - 1 WHERE c.post_date < 'some time today'

UPDATE users u SET u.karma = u.karma - (SELECT COUNT(*) FROM comments c WHERE c.author = u.id AND c.post_date < 'some time today')?

Replies from: Eliezer_Yudkowsky
comment by Eliezer Yudkowsky (Eliezer_Yudkowsky) · 2009-04-08T09:14:46.517Z · LW(p) · GW(p)

Some people were testing the system by deliberately not voting for themselves. Also, Reddit doesn't really run off a proper database. And there could be other consistency checks (I haven't looked at the code).

Replies from: dfranke
comment by dfranke · 2009-04-08T09:23:58.584Z · LW(p) · GW(p)

Last I spoke with Steve Huffman, he told me they were running on top of PostgreSQL, but maybe they switched to something non-relational in the most recent rewrite. Now you've got me curious; I'll check the source.

Replies from: Eliezer_Yudkowsky
comment by Eliezer Yudkowsky (Eliezer_Yudkowsky) · 2009-04-08T09:33:36.813Z · LW(p) · GW(p)

That's not the problem, apparently, it's that what Reddit built on top of the SQL is a huge list of key/value pairs or something like that - in any case it's not as simple as an SQL query.

Replies from: dfranke
comment by dfranke · 2009-04-08T09:51:18.610Z · LW(p) · GW(p)

I just finished going through the source, and while it's still Postgres-based, the schema just uses five tables: type, rel_type, thing, data, rel. So yes, it's fundamentally just a key-value store. I bet I could still whip up some SQL that would do the trick, though it would be a good deal uglier than the above.

Replies from: wmoore
comment by wmoore · 2009-04-14T01:29:21.727Z · LW(p) · GW(p)

This is pretty much right, it uses a big key value store. The issue with karma is that the Account record maintains the karma value but the vote is stored as a separate relationship between the Account and the Link (article). Generally is is not safe to update the database directly as it is necessary to keep the separate memcache coherent. Thus any changes must be done via Python code. Whilst such a change is possible and relatively straightforward I'm not sure its worth it. From what I've seen there are no truly obnoxious users on less wrong that need to be dealt with by such a change.

comment by dfranke · 2009-04-08T01:58:33.242Z · LW(p) · GW(p)

Do we still get an immediate karma point for posting a comment?

(I'll have answered my own question by posting this, and will edit with the answer momentarily.)

Answer: no.

comment by MBlume · 2009-04-08T01:49:26.231Z · LW(p) · GW(p)

testing

ETA: comment showed up with a zero score, and now displays without vote up/down links. Well done folks =)

comment by wmoore · 2009-04-23T02:21:30.536Z · LW(p) · GW(p)

Due to some users being unexpectedly limited from down voting by the prior change. The threshold is now four times your karma.

Replies from: pangloss
comment by pangloss · 2009-04-23T02:28:45.025Z · LW(p) · GW(p)

I thought the point was to limit people's ability to down vote. Wouldn't that be a reason not to change the threshold?

Replies from: wmoore
comment by wmoore · 2009-04-23T02:30:50.952Z · LW(p) · GW(p)

The main driver for the limit was to prevent someone registering one or more accounts and being free to vote everything down.

Replies from: MBlume
comment by MBlume · 2009-04-23T02:34:54.770Z · LW(p) · GW(p)

Well, in that case, we could just pick a threshhold and say anyone above that level gets the keys to the ammo closet.

ETA: Or the garden shed, to stick with the going metaphor.

Replies from: thomblake, pangloss
comment by thomblake · 2009-04-23T16:37:51.293Z · LW(p) · GW(p)

I agree with this, but with no limit on upvotes, the hypothetical spammer could just register more accounts to give each other lots of karma, then use that one to vote everything down. But then, that's a problem for this system too.

Are we just chasing ghosts?

Replies from: MBlume, Vladimir_Nesov
comment by MBlume · 2009-04-23T21:29:59.543Z · LW(p) · GW(p)

Are we just chasing ghosts?

For the moment, yes -- I don't see us being a high-enough priority target to be anticipating barbarians with torches and pitchforks. Still, if we go as far as we're hoping, it seems like a possibility.

comment by Vladimir_Nesov · 2009-04-23T16:42:55.475Z · LW(p) · GW(p)

The right model would perform some kind of flow analysis, starting from the vote graph. I guess there must be standard techniques in web search (linking as voting) and the like, that oppose spam linking (page rank? I haven't studied what it is).

Replies from: ciphergoth, thomblake
comment by Paul Crowley (ciphergoth) · 2009-04-23T17:05:10.842Z · LW(p) · GW(p)

You are looking for "attack resistant trust metrics". Google's PageRank is one such; Raph Levien's Advogato algorithm is another; my TrustFlow is a third.

comment by thomblake · 2009-04-23T16:46:39.231Z · LW(p) · GW(p)

I've wondered if it wouldn't be better to give relatively more weight to votes from people with high karma. I haven't proposed it because it seems counter-productive to escaping the dangers of an echo-chamber, and because it seems like a conflict of interest coming from someone with high karma.

Replies from: Vladimir_Nesov
comment by Vladimir_Nesov · 2009-04-23T16:50:33.305Z · LW(p) · GW(p)

The rule should be stateless: users vote, and it's data. Then, there's an algorithm that computes karma of users and rating of comments, starting from that data. Giving more weight to high-Karma users (adjusted for inadequate voting=significantly different from what others value, and for balance of votes) is similar to electing moderators, and ultimately roots in the founders' conception of what's on-topic, what's valued on this particular forum.

comment by pangloss · 2009-04-23T03:58:01.837Z · LW(p) · GW(p)

i agree. Have a karma based limit under a certain threshold, then, above that threshold, free reign.

comment by outlawpoet · 2009-04-08T01:26:18.859Z · LW(p) · GW(p)

would that mean that on default settings, a post or comment would be invisible until someone voted for it? Should I set my filters for -1?

Replies from: MBlume
comment by MBlume · 2009-04-08T01:34:26.899Z · LW(p) · GW(p)

As I recall, on default settings, you screen comments below -4

Replies from: wmoore
comment by wmoore · 2009-04-08T01:41:36.844Z · LW(p) · GW(p)

Yes that's correct. So on default settings all content is still visible.

The changes Eliezer refers to have now been deployed.

comment by CannibalSmith · 2009-04-08T07:30:47.756Z · LW(p) · GW(p)

Now, set the default hiding threshold to 0 (hide comments with -1 karma and less).