Recently, I have answered a few questions that were upvoted by factors more than the accepted answer, but not accepted. This one, at the time of my writing, has an accepted answer that the asker said was not what he wanted. I don't know why. In the future, when people view this, people might only look at the accepted answer and move on. Would it be possible to have a "community accepted" feature? Maybe only the people at the top can vote to accept it or something. How much rep, if any, should go to that person?
The "accepted answer" feature was never intended to mark which answer is best or even if the answer is correct. It is, simply stated, the answer that the original author found most useful in solving their problem.
The people's-choice favorite answer is selected through the voting process. The "accepted answer" is all the original author. If you want to let the users also select the "accepted answer", the purpose of having a selected answer becomes redundant and useless. That decision has to come from the author, or you're just conflating the two features.
The site is at it's heart a 'question & answer' site. Although many people have taken to posting answers which appeal to the community at large, there are cases where they do so at the expense of the actual question asked by the poster. An example (NOT REAL) situation:
Question: I know this isn't best practice, but restraints force me to do XYZ, how can I implement it (or work with it) to minimize the risks/down-sides?
Answer: It is NEVER acceptable to do XYZ.
The answer will then get upvoted hundreds of times, even though the answerer did not answer the question. Someone else may attempt to answer the question correctly, but because the community is so set against doing XYZ, they won't upvote that answer. Then the poster marks it as correct.
In this case, the correct answer (the answer the poster was looking for) will appear directly beneath the question, and the 'best practices' or 'community accepted' answer will appear right below it.
There have definitely been times where I think the OP picked the wrong answer, (especially when one of my own beautiful and well-crafted answers are in the mix) but since I am not the asker then I do not know exactly what he/she is looking for. Only they do. You may have answered the question to the best of your ability, but only the OP can select the answer that helped them the most.
@Jonathan idea may hold true for popular tags. But take opencv or some other less popular tag. There are very few people who contribute, and most of the questions are done by new users who won't upvote nor accept an answer. Eventually those who participate in this non-popular tags will get sick of spending time helping others when they known their work will end up being unrecognized. For instance, I gave 72 answers in opencv and got only 33 upvotes (I encourage people to review my contributions).
The fact is that we can't trust new users to accept answers when their problem is solved. Sometimes the OP even adds a comment saying "Thanks, that solved my problem!" but it never accepts the answer and also never comes back. This is really frustrating and it's a real problem.
We need a mechanism that allows the community to accept an answer.
My suggestion is that users who own a silver tag-specific badge (that is being used on the question) should be allowed to cast a vote to Accept an answer. Pretty much the same way we do it to close/reopen a question. I already stated this idea before and later added that it might be better if we deny/prevent users that answered the question to also vote for the accepted answer (to avoid a potential conflict of interest).
Wow, this is quite a blast from the past (so to speak). I actually suggested this many months ago, back when Stack Overflow was still in private beta:
Every part of Stack Overflow is run and moderated by the community except one: the selection of the accepted answer. As long as you have one person in charge of selected answers you will always have to deal with their particular biases, which decrease the value of Stack Overflow as an objective reference to programming questions.
It might be a good idea that in addition to the answer selected by the asker that there be a community selected answer. This would be completely orthogonal to the up/down votes for the questions, and would only allow one selected answer per person per question. An approach like this would greatly serve to make Stack Overflow a more equitable and fair system.
Here is how it could work:
Expose the "select answer" link to everyone (or perhaps just registered users) and allow them to select at most one answer per question. The answer with the highest number (5 or more) of selections becomes the community-selected answer. To reduce potential for abuse, there should be no reputation or badge associated with this answer selection.
(this is in response to criticism that Stack Overflow is merely the "blind leading the blind": http://blogging-harmful.blogspot.com/2008/08/stack-overflow-blind-leading-blind.html)
And the official response was:
I did. Votes and sorting are the de-facto community answer.
community mode essentially achieves this; see FAQ. Posts automatically get moved into community wiki mode when certain criteria are met. Also, votes are de-facto choosing the community accepted answer; it's the one with the most votes!
It's certainly an interesting suggestion, but unless something has changed in the nature of Stack Overflow in the intervening months (as well it could have) I think that the official response would be much the same today.
I think the idea is to have it stick to the top, right below a person's accepted answer. Not everyone views posts the same way, and if the community thinks that an answer is best, and it's on page two for me, I might not see it. However, if the community can not only upvote, but say "this is the right solution", then the "right" answer will stick to the top for everyone.
It's fine to keep the distinction between vote (community acceptance) and "accepted" answers. It's also fine to have askers which never accept answers. But not at the cost of cluttering the site for everyone else.
All the "Unanswered" elements in the GUI should use a definition which values non-negatively scored answers: I mean the tag info card, the "Unanswered" tabs, probably the general site statistics too.
SE community should not mark-as-accept an answer when:
- The asker do not explicitly mention the answer is satisfactory/ useful enough.
- The answer has zero or negative votes.
- The answer received positive non-zero scores; but there exists a place for any doubt (i.e. more doubtless answer is yet possible).
- The answers are newer than 1 year.
SE community should mark an answer as accepted when:
- The asker explicitly mentions the answer as enough satisfactory / useful to solve the purpose.
- The answer carries a non-zero positive-score.
- The answer is doubtless or too-obvious.
- The answer is 1 year or more old.
Additionally SE should also have the ability
to cancel the acceptation by asker, if the answer is wrong, just accepted by the owner in a hasty or random way.
To avoid unresponsiveness of the asker, SE should
Notify the user through mail / message through the E-mail Id / Social-media account / Online ID provider, to follow up the question.
Recommend through similar notification, a request to make a permanent, direct account for SE.
Recommend account recovery or password reset ("forgot password?") option.
In cases of the user have a direct SE account, show them a notification/ flash-card/pop-up where-ever they log into the entire SE network.
The core problem is the noise factor of a mostly irrelevant accepted answer. It's prominently displayed at the top of the answers. Just as we don't want "thanks" and "me too" cluttering up the presentation, we don't want to have to wade past a lesser answer.
One possible solution would be a way to flag an accepted answer to suggest its acceptance be removed. With enough votes, it would be unaccepted and the OP notified. The OP would still have the right to re-accept that or any answer if he wanted. Likely, he would accept the answer with the high vote count, or just not respond and leave no answer accepted, which would still work out fine.
Another possibility is to just leave things as they are, since some workarounds can be pretty clever. :-)
The issue you're addressing is basically irresponsible askers or users that don't use the site features correctly. It is almost the same issue as users who don't come back and accept an answer after asking a question.
Unfortunately a type of cruft. I think that for users that un-signup as it were (their name appears gray), something should assume ownership of that question and be able to move that checkmark around.