| The challenges of karmic currencies (sorry couldn't resist) are well known. I totally agree that they tend to create a 'hive mind' type unity when there is a scalar value. That an be good in the sense that the community converges around a common set of shared beliefs and values, folks who don't share those beliefs and values get signaled to leave, and typically it seems they do. The 'center mass' of that community moves but only slowly over time. In one of pg's posts about the challenges of karma and Hackernews, I suggested that an interesting experiment might be to try making it a vector rather than a scalar. The idea is conceptually simple, you have 'more approve' and 'less approve' (upvote and downvote) but the person whose comment you are posting on defines the vector. It would work like this: Alice upvotes Bob generates vector [1, Bob]
Alice downvotes Chuck generates vector [-1, Chuck]
Bob upvotes Alice generates [1, Alice]
Chuck dowvotes Bob [-1, Bob] So between Alice and Bob there are both positive upvotes. This creates a [Alice, Bob] nexus, there are negative votes away from Chuck by both Bob and Alice which creates a [Chuck, Chuck] nexus which is directionally 'opposite' the [Alice, Bob] nexus. Now if you work this over the community. Alice and Bob will have higher karma in the [Alice, Bob] community and lower in the [Chuck, Chuck] community. So when you show karma 'points' for Alice they represent Alice's conformance to that community and show Chuck as negative in their community. But when Chuck looks at his karma he is positive in the [Chuck, Chuck] nexus and Alice and Bob are negative. The question (and I don't know the answer of course)is whether or not you can create a discussion site which evolves several simultaneous communities by karma score within the same set of conversations. The ultimate test would be that the comments you see are always interesting and insightful to you but they may be differently rated than someone else seeing the same conversation. Anyway, one of those 'if I had a spare weekend I'd try this...' kinds of thoughts. The idea is public domain, I've got not personal claim on it, I'm not even sure its implementable! |
Some systems I have noodled around with apply a similar set of vectors using an advogato-like trust metric, but one where each viewer is their own source of (advocato was a hierarchical system where trust flowed from a few sources, given available resources today you can evaluate the flow network from each viewer's individual perspective.) It is not too hard to extend such a system to embody ideas like "expertise" where topics and keywords are passive nodes in the graph so that Alice can upvote Bob for postings related to coding but downvote him on postings about politics.
The research and mechanics are fun to play with and think about, but when you start to analyze the system in terms of the sort of community it would probably create you end up with a collection of smaller, partially overlapping echo chambers. The real problem, IMHO, is that you need to get a little bit more signal on the inputs. Up/down is just not enough. I think a system like this can determine if you using up/down as agree/disagree or as interesting/stupid, but if you mix those signals things appear to rapidly head towards some unpleasant local minima. If there was a nice way to get users to use a four or eight point voting box (permute agree/disagree, interesting/not-interesting, and optionally add a null signal for each pair) then you could really do some fun stuff for creating a neat alternative to all of the various social news sites out there...