Zero-based karma coming through
post by Eliezer Yudkowsky (Eliezer_Yudkowsky) · 2009-04-08T01:19:18.700Z · LW · GW · Legacy · 40 commentsContents
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 SarahNibs (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 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 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 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 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 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: MBlumecomment 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).