The Green Checkmark of Acceptance

2010-03-13 00:13:24 -08:00

Here’s how answers to a question on Stack Overflow appear to the questioner:

Every answer has, below the helpful/unhelpful buttons, a hollow checkmark button.

When the questioner clicks on one of those checkmarks, it marks the answer as the accepted answer to that question, and changes the checkmark from a gray stroke to a green fill.

Everybody else reading the question will see, below the questioner’s name, an indication of how many of their questions have accepted answers. Today, for example, my questions have:

Peter Hosey
23.1k 2 14 28
67% accept rate

This indicates that I have accepted answers on four-sixths of my questions.

Sometimes, I see a comment like this semi-fictional example (written by me, based on several real examples I’ve seen) on a question whose author has a low or zero acceptance rate:

0% accept rate? You really should accept answers on your questions, or people may not answer any further questions from you.

This is a bad reason to accept answers.

The real reason to accept an answer is that you believe it’s the correct answer.

Sometimes questioners choose bad answers (deprecated APIs, hacky solution, etc.). When that happens, it’s a problem because it may lead future readers astray—they may think that this is the correct answer (because the questioner said so), without reading the other answers or the comments and finding out that this way sucks and/or there is a better one.

The same problem happens when a questioner accepts an answer because they think they have to, out of some sort of social obligation, rather than because they truly believe it is the correct answer. They may not have the correct answer yet, or there may not be a correct answer yet, but they feel like they have to accept something, so they accept the best answer they have, however good or bad it is, solely to raise that all-important number.

That sucks.

Questioners: About a day after asking a question, you should return to it, read all the answers, try them in descending order by votes, and accept the one that works and is the least hacky, for the benefit of other people who have the same question you asked. Take comments into account—something may not look hacky, but a comment may point out the hackiness.

And if there is no good answer, you don’t need to accept anything. For the same reason (the benefit of future readers), you should leave the question open.

It’s OK to have an acceptance rate that is below 100% or even low, as long as you are accepting answers that you find work and are non-hacky, on as many of your questions as you can. As long as you’re making that effort, you’re doing it right.

People who post comments like the one above: Why are you so desperate for karma? It’s not like it’s scarce or valuable. Net scores on answers are meaningful (usually), but your personal total, like mine, is next to meaningless. It’s a reward, yes, but an empty one, so I don’t see why you get all hurt when you perceive a risk that someone may not give it to you.

In summary: Don’t worry about it. Accept correct answers, write correct answers, and don’t worry about your acceptance rate or anyone else’s.

6 Responses to “The Green Checkmark of Acceptance”

  1. sam Says:

    I have to admit I’ve accepted answers just to get my accept rate up. I didn’t like doing it at all, but I felt the ‘social pressure’ to do so. I was concerned that if I asked questions in the future I wouldn’t get answers because of the accept rate. I hope lots of people read your post.

  2. Dave Says:

    Generally, I agree with you. If there’s no correct answer possible or given, then there’s no need to accept an answer as correct.

    However, there is a negative side effect of not accepting answers, and that’s for everyone else who has the same question. I frequently find myself on from Google looking at a question that’s similar or identical to one I have. (For example, here’s one Google linked me to yesterday.) Sometimes these questions have no accepted answer (for whatever reason), in which case I’m usually not much better off than where I started. I still have to figure out for myself which answer is going to work. If the user had accepted an answer, I could potentially cut down my experimentation time form O(n) to O(1).

    By accepting answers, questioners not only indicate that they heard, tried, and appreciated the feedback given (which is nice for us as answerers), but they also give back and help everyone else after them who has the same (or similar) question.

  3. Peter Hosey Says:

    Dave: I think you stopped reading a little early. I made the same point in the post.

  4. Yuji Says:

    I completely agree with your opinion! You asked “why are you so desperate for karma”. I would say, in Eastern philosophy, just by being desperate for the karma itself, you’re away from good karma.

  5. Chuck Says:

    I would be surprised if you’ve ever got a comment like that. Usually, it’s directed at people who ask really bad, difficult-to-understand questions that they never clarify and never come back to mark an answer correct even if it’s indubitably right. I don’t give a toss about getting karma — I’d actually prefer to have less so people wouldn’t have so much trouble believing I have a girlfriend — but that is just rude and unhelpful when people do that. I think telling them to go back and accept questions is a way of getting them to look through the answers and actually choose one.

    If somebody actually replied with a comment along the lines of “I tried all the answers to my questions and nobody has given one that works,” I’m pretty sure nobody would argue with that. But the posters who get told to accept answers never respond that way, because they really were just being lazy and not doing their part to make the site work.

  6. Peter Hosey Says:

    Chuck: No, I’ve never received such a comment on any of my own questions.

    I also have no objection to the act of asking people to accept answers on their questions; my objection is to the oft-stated reason of “so people have an incentive to answer questions from you”.

Leave a Reply

Do not delete the second sentence.

Warning: Undefined array key "ntt_saved_comment_text" in /home/public/blog/wp-content/plugins/negative-turing-test/negative-turing-test.php on line 143