Zero-based karma coming through

6 Post author: Eliezer_Yudkowsky 08 April 2009 01:19AM

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.

Comments (39)

Comment author: outlawpoet 08 April 2009 01:26:18AM 0 points [-]

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?

Comment author: MBlume 08 April 2009 01:34:26AM 3 points [-]

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

Comment author: wmoore 08 April 2009 01:41:36AM *  0 points [-]

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

The changes Eliezer refers to have now been deployed.

Comment author: MBlume 08 April 2009 01:49:26AM 0 points [-]

testing

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

Comment author: dfranke 08 April 2009 01:58:33AM *  1 point [-]

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 author: Pablo_Stafforini 08 April 2009 03:42:19AM 0 points [-]

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.

Comment author: dclayh 08 April 2009 03:55:20AM 2 points [-]

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

Comment author: dfranke 08 April 2009 06:06:13AM 1 point [-]

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 author: dfranke 08 April 2009 06:12:11AM *  1 point [-]

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')?

Comment author: Eliezer_Yudkowsky 08 April 2009 09:14:46AM 1 point [-]

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).

Comment author: dfranke 08 April 2009 09:23:58AM 0 points [-]

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.

Comment author: Eliezer_Yudkowsky 08 April 2009 09:33:36AM 1 point [-]

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.

Comment author: dfranke 08 April 2009 09:51:18AM 0 points [-]

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.

Comment author: wmoore 14 April 2009 01:29:21AM 0 points [-]

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 author: Kaj_Sotala 08 April 2009 09:18:16AM 1 point [-]

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 author: wmoore 22 April 2009 06:28:33AM 2 points [-]

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

Comment author: MBlume 22 April 2009 06:41:23AM 0 points [-]

I like this

Comment author: GuySrinivasan 22 April 2009 06:45:04AM *  2 points [-]

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!"

Comment author: wmoore 22 April 2009 07:32:38AM 0 points [-]

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 author: Vladimir_Nesov 22 April 2009 01:09:55PM *  0 points [-]

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.

Comment author: wmoore 22 April 2009 10:59:39PM 0 points [-]

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:

Not Enough Karma

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

Comment author: Vladimir_Nesov 23 April 2009 12:15:16AM 3 points [-]

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.

Comment author: mattnewport 23 April 2009 12:43:13AM 1 point [-]

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.

Comment author: Vladimir_Nesov 23 April 2009 12:49:18AM *  3 points [-]

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.

Comment author: Vladimir_Nesov 23 April 2009 12:27:58AM 0 points [-]

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

Comment author: wmoore 23 April 2009 12:43:38AM *  0 points [-]

Just standard Markdown:

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

Check your inbox.

Comment author: Vladimir_Nesov 23 April 2009 12:55:53AM *  1 point [-]

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

Comment author: wmoore 23 April 2009 02:21:30AM 0 points [-]

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

Comment author: pangloss 23 April 2009 02:28:45AM *  0 points [-]

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

Comment author: wmoore 23 April 2009 02:30:50AM 1 point [-]

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

Comment author: MBlume 23 April 2009 02:34:54AM *  5 points [-]

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.

Comment author: pangloss 23 April 2009 03:58:01AM 2 points [-]

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

Comment author: thomblake 23 April 2009 04:37:51PM 4 points [-]

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?

Comment author: Vladimir_Nesov 23 April 2009 04:42:55PM 0 points [-]

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).

Comment author: thomblake 23 April 2009 04:46:39PM 0 points [-]

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.

Comment author: Vladimir_Nesov 23 April 2009 04:50:33PM *  2 points [-]

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 author: ciphergoth 23 April 2009 05:05:10PM 3 points [-]

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 author: MBlume 23 April 2009 09:29:59PM 0 points [-]

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.