LessWrong anti-kibitzer (hides comment authors and vote counts)

post by Marcello · 2009-03-09T19:18:44.923Z · LW · GW · Legacy · 62 comments

Related to Information Cascades

Information Cascades has implied that people's votes are being biased by the number of votes already cast. Similarly, some commenters express a perception that higher status posters are being upvoted too much.

EDIT: the UserScript below no longer works because it is a very old version of the site. LessWrong v2.0 Anti-Kibitzer is for the new version of the site (working as of May 2020). It has the added feature that each user is assigned a color and style of censor-bar to represent their username, which makes threaded conversations easier to follow.


If, like me, you suspect that you might be prone to these biases, you can correct for them by installing LessWrong anti-kibitzer which I hacked together yesterday morning. You will need Firefox with the greasemonkey extention installed. Once you have greasemonkey installed, clicking on the link to the script will pop up a dialog box asking if you want to enable the script. Once you enable it, a button which you can use to toggle the visibility of author and point count information should appear in the upper right corner of any page on LessWrong. (On any page you load, the authors and pointcounts are automatically hidden until you show them.) Let me know if it doesn't work for any of you.

Already, I've had some interesting experiences. There were a few comments that I thought were written by Eliezer that turned out not to be (though perhaps people are copying his writing style.) There were also comments that I thought contained good arguments which were written by people I was apparently too quick to dismiss as trolls. What are your experiences?

62 comments

Comments sorted by top scores.

comment by Eliezer Yudkowsky (Eliezer_Yudkowsky) · 2009-03-09T21:58:06.705Z · LW(p) · GW(p)

If the main Less Wrong codebase offered an option to hide the names of contributors and non-negative karma point totals (because negatives you may want to let your eyes just skip over), not revealing them until voted on (including a neutral vote)...

...then what would you think of only giving half a karma point for any votes made without obscuring the name and current total? (Likewise any votes changed after the reveal.) Fair? Or just annoying?

Replies from: anonym, thomblake, MichaelHoward, Cameron_Taylor, grobstein
comment by anonym · 2009-03-10T06:45:14.797Z · LW(p) · GW(p)

The half-point idea is an interesting one. I find it hard to think of genuinely good reasons for wanting to know how positive a score is before deciding whether to vote up or not, and I haven't heard any good explanations from anybody else yet either. That's to be contrasted with the multitude of bad reasons for wanting to know the score beforehand, which exploit common cognitive biases that we are all at least partially subject to. I do find the idea a bit heavy-handed, but I think it would make the community slightly less herd-like and a bit more rational.

Of course, you'd also have to change the code base so that once an initial blind vote has been made, any further changes would only register at the lower value.

As to whether it's unfair, you could explain it as getting an EXTRA half point for your willingness to make a small sacrifice for the betterment of the community at large. You could even make it 1 point versus 1.5 points.

Replies from: thomblake
comment by thomblake · 2009-03-10T14:04:25.052Z · LW(p) · GW(p)

that's brilliant and hilarious. We should implement more de-biasing programs by exploiting biases.

Though I'd say by this scheme it should be 1 point versus 2, just to preserve the punchline.

Replies from: Larks
comment by Larks · 2009-08-19T19:48:17.461Z · LW(p) · GW(p)

Maybe have endorcements for the program by respected members? Pictures of attractive women marvelling at Bayes on little adverts? Make it opt-out?

comment by thomblake · 2009-03-09T22:42:03.103Z · LW(p) · GW(p)

Just annoying.

Though I frequently change my votes as I reflect on them, so even reading anonymously I'd probably end up with all devalued votes. And this process of reflection would eliminate any debiasing effect of reading anonymously.

Of course, I put a lot of stock in character, so I don't see the problem with occasionally voting up comments by better people.

comment by MichaelHoward · 2009-03-09T22:29:10.895Z · LW(p) · GW(p)

IMHO, unfair. But it would be interesting to have an option to see such a total, or to see how much karma is from info-obscured vs info-revealed votes.

comment by Cameron_Taylor · 2009-03-10T07:12:47.054Z · LW(p) · GW(p)

Good idea Eliezer.

Then add in an autocomplete box that I can use to guess the author's name based off the comment. It's fascinating trying to pick out the fist of an author.

comment by grobstein · 2009-03-10T18:09:52.165Z · LW(p) · GW(p)

Simply annoying from a usability point of view. It requires you to know too surely which posts you will want to vote on and which authors you'll want to know; if you care about the value of your karmic vote you'll wind up interfering with your enjoyment of the posts to preserve its value; etc.

comment by Morendil · 2010-01-22T10:22:05.766Z · LW(p) · GW(p)

The latest version of the Anti-Kibitzer Script (click "View the original post" above this comment to lean more about it)

  • is integrated directly within LessWrong (no more Greasemonkey)
  • is controlled by a section in the user Preferences called Kibitz Options
  • hides names and scores from sidebars, and hides your own karma score

To activate, simply navigate to Preferences and check "Enable anti-kibitzer" - this will add a button to the upper right allowing you (without refreshing the page) to temporarily display names and scores again.

Replies from: Zack_M_Davis, Baughn, capybaralet
comment by Zack_M_Davis · 2010-05-23T05:05:02.380Z · LW(p) · GW(p)

When the feature is active (respectively inactive), the button says "Turn Kibitzing Off" (respectively "Turn Kibitzing On"). Shouldn't it say turn "Turn Anti-Kibitzing Off" (resp. &c.)? Kibitz, to gossip, so removing the names is "anti-gossip," right?

Replies from: Morendil
comment by Morendil · 2010-05-23T08:46:39.353Z · LW(p) · GW(p)

Yep. This is among the bugs fixed in v0.5.

comment by Baughn · 2010-05-01T19:03:31.876Z · LW(p) · GW(p)

I don't seem to have that preference. Is it still supposed to be there?

Replies from: Morendil
comment by Morendil · 2010-05-01T19:14:26.677Z · LW(p) · GW(p)

Not released yet, as I alluded to elsewhere. I jumped the gun in updating the above comment to describe what's coming.

Version 0.44 is here, still packaged as a Greasemonkey script.

comment by capybaralet · 2019-11-28T17:32:15.184Z · LW(p) · GW(p)

The link to user preferences is broken. Is there still this feature built-in? Or does the firefox thing still work?

Replies from: Bucky
comment by Bucky · 2019-11-28T18:52:41.094Z · LW(p) · GW(p)

i don’t think this is available on new lesswrong. It is available if you use greaterwrong.com. See here [LW · GW] for instructions.

Replies from: habryka4
comment by habryka (habryka4) · 2019-11-28T19:29:16.312Z · LW(p) · GW(p)

Yeah, greaterwrong has that feature. If enough people want it we could also implement it here on LessWrong.

Replies from: mr-hire
comment by Matt Goldenberg (mr-hire) · 2019-11-29T04:19:13.467Z · LW(p) · GW(p)

raises hand

Replies from: Marcello
comment by Marcello · 2020-05-09T01:45:34.343Z · LW(p) · GW(p)

Well, I made another UserScript for the current site: https://github.com/mherreshoff/lw-antikibitzer

comment by scientism · 2009-03-09T23:27:00.653Z · LW(p) · GW(p)

I think one of the useful things about being able to identify people by name is that you frequently end up entertaining a contrary opinion you would have otherwise dismissed because it's held by someone you respect. Such events are probably more significant to personal development than discovering a gem in the rough you would have otherwise overlooked. Hiding karma probably has more utility than hiding names.

comment by AnnaSalamon · 2009-03-09T21:39:51.526Z · LW(p) · GW(p)

How hard would it be to make a modified program that tracked the up-votes and down-votes one makes with and without it (storing the comment author, the number of points the comment previously had, and one's own vote) and then printed that data in some Excel/Octave/etc.-readable format? It would be nice to know the details of my own biases.

This program is great, though. Thanks, Marcello.

Replies from: MichaelHoward
comment by MichaelHoward · 2009-03-09T22:32:03.693Z · LW(p) · GW(p)

It would be nice to know the details of my own biases.

Remembering, of course, correlation isn't causation :-)

comment by swestrup · 2009-03-10T00:47:23.205Z · LW(p) · GW(p)

Actually, I find I have the exact opposite problem. I almost never vote. Partly that's because I read Less Wrong through an RSS feed that doesn't even show the vote totals. I only ever vote if, like now, I've gone to the actual site in order to comment.

Even then, I find that I am comparing the quality of Less Wrong posts and comments against the entire corpus of what I read on a daily basis, some of which is great, and some of which is dreck.

So, I tend to only vote when the quality of what is written is extremely good -- enough so that I want to 'reward' it -- or extremely bad, so that I want to punish. The vast majority is in the middle and so I don't bother to vote.

comment by Cameron_Taylor · 2009-03-10T07:17:56.972Z · LW(p) · GW(p)

Thankyou Marcello!

I'm not particularly worried about my voting being biassed. In fact, seeing the dynamics of 'karma' at play, and feeling the impact of the social forces so explicitly is a useful experience.

Nevertheless, the 'social game' is always a distraction that takes up valuable resources. I expect I'll turn on your script fairly often, just so I can turn off the noise. I find it emotionally draining to go ahead and write posts that I know will be dissaproved of, yet still consider worth saying. All over an utterly insignficant and easily manipulated number on a server somewhere. Yet, I suppose that is just more visceral experience of the costs of rationality.

If only you could write one of those for real life. It'd make things so much less tiresome.

comment by nazgulnarsil · 2009-03-09T20:51:05.963Z · LW(p) · GW(p)

I think the latter experience is telling. my experience of trolls tells me that they get labeled as trolls because they say things that make people uncomfortable because they suspect they might be true. If the so called troll was just saying completely wacky things it would be simple to dismiss them. Someone coming into a forum and shouting white power or some such nonsense is not the same as a troll.

comment by neuromancer92 · 2012-04-17T18:46:57.837Z · LW(p) · GW(p)

I'm significantly torn on whether to enable this. I understand the downsides of seeing authors (and am confident that I'm engaging in at least some of them), but I have one issue with it. Knowing authors can improve my ability to rapidly and effectively process posts. There's at least one author who makes very good points, but sometimes glosses over issues that turn out to be either quite complicated or openings to criticism of the post. I've found these omissions both important and quite hard to find - at the moment, its worth it to me to leave author names active just to be aware that I need to read these posts with a different style of criticism than I normally engage in.

In short, there are sometimes positive outcomes of knowing authors, if only for general efficiency increases.

Replies from: potato
comment by Ronny (potato) · 2012-06-06T20:10:20.224Z · LW(p) · GW(p)

I have my anti-kibitzer on, I've had it on for two days. I too, read certain posters more carefully than others, but now, rather than deciding who to read carefully by status, I decide who to read carefully by over-viewing the contents of their posts. Of course, you want to give more resources and time to a great master of the art, than to a moderate master. But deciding who is who by status, or letting status weight in as much as it does in humans, is almost as bad as not having any time management at all. It's like time managing, where you also falsely think that some independent variable has something to do with the content.

comment by Oscar_Cunningham · 2010-05-28T20:04:59.253Z · LW(p) · GW(p)

When I see a lesswrong post in my RSS reader, it still shows the author of the post. Is there a way I can avoid this? Does anyone else experience the same problem?

Replies from: mattnewport, Morendil
comment by Morendil · 2010-05-28T20:32:53.374Z · LW(p) · GW(p)

The anti-kibitzer script is designed with Web browsing in mind rather than RSS feeds.

The RSS feed doesn't seem to show posts or comments' karma scores anyway, and doesn't allow voting as far as I know, so the anti-kibitz feature may not be relevant for people who consume LessWrong that way.

I could be wrong about this, of course - tell me more if I am?

Replies from: Oscar_Cunningham
comment by Oscar_Cunningham · 2010-05-28T21:10:14.427Z · LW(p) · GW(p)

On a rationallity website that knows about biases like the halo effect, displaying the author of a post before the content is just silly.

The identity of the author influences my interpretation of the post before I've even read it, so it would be better if the author of the post didn't appear right at the top of the RSS item. This could be avoided by, for instance, creating a parallel RSS feed without info about the author. This would be a lot of effort to go to just for me, which is why I asked if other people had the same problem.

Replies from: Amanojack
comment by Amanojack · 2011-05-03T02:18:25.502Z · LW(p) · GW(p)

The only problem is, part of the meaning of the post is its context, and sometimes the author's identity provides context. Like when multiple people are having a discussion and someone says, "As I wrote above..." or something. They could just link everything, but it'd be best if the anti-kibitzer assigned random names or numbers to each commenter in a given thread - or something like that. That way you'd at least be able to follow a discussion. Or does it already do that?

Replies from: Pavitra
comment by Pavitra · 2011-06-02T23:29:21.300Z · LW(p) · GW(p)

Yes please. Gensymming authors by thread would fix most of the problems on both side of the kibitz button.

The author should probably be in manual control of which comments visibly share authorship.

comment by Dagon · 2009-07-20T17:43:28.890Z · LW(p) · GW(p)

I didn't think I needed this until the current kerfuffle over gender bias came up. Still unsure if it's the most effective approach to avoiding my own biases (i.e. judging argument and author together), but it's an awesome experiment.

comment by anonym · 2009-03-10T21:34:18.975Z · LW(p) · GW(p)

This is really great. Thanks for making it available.

My only suggestion is to hide the "Turn kibitzing On/Off" icon after a few seconds and only show it when the user hovers over that area.

The reason I make this suggestion is that while I slowly scroll down the page while reading, the icon jumps all over the place in the upper right corner as it repositions itself 10 times a second.

Even if it didn't jump around, I'd still rather have it hidden except when needed. IMHO, it stands out against the dark background and mars the otherwise very nice LW aesthetic.

Replies from: Baughn
comment by Baughn · 2009-03-11T13:42:13.484Z · LW(p) · GW(p)

That's a bug of sorts in the script, and easily fixable. In fact, I've already done so; have an updated version.

Replies from: anonym, Marcello
comment by anonym · 2009-03-11T19:55:38.133Z · LW(p) · GW(p)

I'd still prefer it be hidden altogether after a few seconds until I hover in that area, but this is a big improvement. Thanks.

comment by Marcello · 2009-03-11T19:06:27.609Z · LW(p) · GW(p)

Your version is now the official version 0.3. However, the one thing you changed (possibly unintentionally) was to make Kibitzing default to on. I changed it back to defaulting to off, because it's easy to click the button if you're curious, but impossible to un-see who wrote all the comments, if you didn't want to look.

comment by dougcosine · 2011-05-23T06:40:13.724Z · LW(p) · GW(p)

It appears as though activating anti-kibitzer causes the lesswrong, Singularity Institute, and Future of Humanity logos appear in the wrong places in the header.

Replies from: Pavitra
comment by Pavitra · 2011-06-02T23:31:13.336Z · LW(p) · GW(p)

I believe this is specifically anti-kibitzer and Firefox 4 in combination; I've had AK on for a while, and only noticed the problem when I upgrade from FF3. Other breakages include block quotation in comments and vote link bolding.

comment by RobinZ · 2009-07-09T19:32:36.898Z · LW(p) · GW(p)

A couple notes: I still see names in "Recent Comments", and I still see names in comment permalink pages. Still, good stuff!

Edit: Also, it hides my name and my scores, which seems rather useless from an objectivity perspective...

comment by Vladimir_Golovin · 2009-03-09T20:31:52.190Z · LW(p) · GW(p)

Just installed it, works like a charm -- I'll keep it this way. If only it could hide the sidebar as well.

Also, thanks to this post, I'm now aware of the fact that there are posts other than those listed on the homepage! I have no prior experience with Reddit, so I assumed that the front page is completely community-driven, but it turns out that it is for 'PROMOTED' posts only!

I spotted the word 'anti-kibitzer' in the sidebar, but was unable to find the post on the front page -- that's how I discovered the 'NEW' and 'POPULAR' links under the site banner.

Replies from: Marcello, Vladimir_Golovin
comment by Marcello · 2009-03-09T21:04:16.129Z · LW(p) · GW(p)

I've upgraded the LW anti-kibitzer so that it hides the taglines in the recent comments sidebar as well. (Which is imperfect, because it also hides which post the comment was about, but better will have to wait until the server starts enclosing all the kibitzing pieces of information in nice tags.) No such hack was possible for the recent posts sidebar.

Replies from: Eliezer_Yudkowsky
comment by Eliezer Yudkowsky (Eliezer_Yudkowsky) · 2009-03-09T21:10:28.370Z · LW(p) · GW(p)

Well, to kibitz the anti-kibitzing, it looks to me like:

by Marcello

would match pretty easily against something that looked for

by (.+)

and deleted it, similarly on the Recent Posts but without the , checking for the identity of the two matched strings is optional (I forget how to do this offhand with REs).

Replies from: Marcello, matt
comment by Marcello · 2009-03-09T21:46:37.438Z · LW(p) · GW(p)

That particular hack looks like a bad idea. What if somebody actually put a bold-face link into a post or comment? However, your original suggestion wan't as bad. All non-relative links to user pages get blocked by the anti-kibitzer. (Links in "Top contributors" and stuff in comments seem to be turned into relative links if they point inside LW.) It's gross, but it works.

Version 0.2 is now up. It hides everything except the point-counts on the recent posts (there was no tag around those.) (Incidentally, I don't have regular expressions because by the time my script gets its hands on the data, it's not a string at all, but a DOM-tree. So, you'd have to specify it in XPath.)

I think trying to do any more at this point would be pointless. Most of the effort involved in getting something like this to be perfect would be gruesome reverse engineering, which would all break the minute the site maintainers change something. The right thing to do(TM) would be to get the people at Tricycle to implement the feature (I hereby put the code I wrote into the public domain, yada yada.) Then we don't have to worry about having to detect which part of the page something belongs to because the server actually knows.

Replies from: matt
comment by matt · 2009-03-10T04:58:57.094Z · LW(p) · GW(p)

I hereby put the code I wrote into the public domain, yada yada.

A great way to put your code into the public domain would be to put it up somewhere like (ideally exactly like, because they're very awesome) http://github.com/.

If anyone else wants to modify your code the git (and GitHub) workflow is very good - anyone can fork your repository, and if you want to accept their changes that's easy for you to do.

See the GitHub Guides if you're interested.

comment by matt · 2009-03-10T04:50:23.765Z · LW(p) · GW(p)

by (.+)

by <a href="http://lesswrong.com/user/([^"]+)"><strong>([^<]+)</strong></a> would be better (you could also make your .+ non-greedy with .+?), but us (Trike) providing more classes and ids is better still. We're looking into it.

comment by Vladimir_Golovin · 2009-03-09T20:37:08.588Z · LW(p) · GW(p)

Uh, now it's on the homepage. I'm completely confused. What determines if (and when) a post makes it to the homepage -- human intervention or some kind of algorithm?

Replies from: Johnicholas
comment by Johnicholas · 2009-03-09T20:45:48.433Z · LW(p) · GW(p)

Editors include Robin Hanson and Eliezer Yudkowsky; they promote articles to the "Promoted" page.

comment by Tyrrell_McAllister · 2009-03-09T20:30:47.114Z · LW(p) · GW(p)

Thanks for making this available. Plus, thanks for the opportunity to learn about Greasemonkey :).

comment by Scott Alexander (Yvain) · 2009-03-09T20:04:52.145Z · LW(p) · GW(p)

Thank you. Trying it now and it's working perfectly. It's like a dream come true.

Replies from: GuySrinivasan
comment by GuySrinivasan · 2009-03-09T20:12:04.862Z · LW(p) · GW(p)

Looks great to me! Unfortunately I know via Recent Comments and Recent Posts the identity of the author of the above comment... ;)

comment by [deleted] · 2012-08-03T02:25:21.542Z · LW(p) · GW(p)

The "Only works in Firefox" note in the preferences is incorrect; it's working fine for me in Chrome.

comment by Morendil · 2010-06-30T17:52:58.968Z · LW(p) · GW(p)

Anyone else using Anti-Kibitzer, the new version that's activated from Preferences?

The AK script is currently broken on article pages, due to some funky interaction between its CSS and the AddThis bookmark at the bottom of the page. (Since this is outside the LW codebase I have no reliable way to check if this is a recent change or if it has been broken for a while and I only just noticed. I'm pretty sure it's a recent change.)

I'll push a fix in the next few days.

Is anyone still using the old (Greasemonkey powered) version?

Replies from: Morendil
comment by Morendil · 2010-07-02T08:15:19.481Z · LW(p) · GW(p)

Fix committed and pushed. Though I'm getting the impression this is mostly for my own benefit?

Replies from: wedrifid, Oscar_Cunningham
comment by wedrifid · 2010-07-02T08:53:06.670Z · LW(p) · GW(p)

I may take another look. I used it for a while... must be a year ago now. I hacked it around a little too, to add a couple of features I desired.

Replies from: Morendil
comment by Morendil · 2010-07-02T09:01:04.790Z · LW(p) · GW(p)

What were those?

Replies from: wedrifid
comment by wedrifid · 2010-07-02T10:24:21.075Z · LW(p) · GW(p)

Turning off the 'new messages' notification and blocking comments based on user. I also had it so it would selectively block comments by a user only when they were replying to me.

comment by Oscar_Cunningham · 2010-07-02T08:23:31.856Z · LW(p) · GW(p)

I had been using the anti-kibitzer, but since yesterday if I pushed the button to turn it off I would get:

http://i157.photobucket.com/albums/t43/Macbi/lesswrongscreenshot.png

And if I pushed it again the page would be pure white (not even an anti-kibitz button). (Latest version of Firefox being used on Windows 7)

Replies from: Morendil
comment by Morendil · 2010-07-02T08:48:38.431Z · LW(p) · GW(p)

Yep, I've been seeing just the same thing. It's the defect I've corrected, and it will go away as soon as Tricycle push it to production. That sometimes takes a few day or more.

The specific defect in the code might make an interesting anecdote in that "programming as a rationalist skill" post I've been planning for ages. My thesis is that every single "bug" in software is the result of a map-territory mismatch.

In this particular case, I'd been assuming that once a Web page was loaded, its CSS stylesheets could be accessed by a Javascript program through an array whose ordering wouldn't change. This assumption turned out to be wrong: the "AddThis" widget at the bottom of a post inserts a stylesheet right at the top of the array, shifting the main stylesheet one place forward, so that it is on that stylesheet that the AK script stomps.

comment by Cameron_Taylor · 2009-05-20T07:34:59.081Z · LW(p) · GW(p)

Thanks , great script!

I found it useful to add the line:

forallElts("//span[contains(@class,'score')]", fn)

under:

forallElts("//span[contains(@id,'score')]", fn)
Replies from: Cameron_Taylor
comment by Cameron_Taylor · 2009-05-20T08:18:33.114Z · LW(p) · GW(p)

Errr... actually this is dangerous. I was just reading over some old posts and caught myself just before I replied to my past self.