122

As a disclaimer, I must admit this may benefit me (I haven't checked), but probably not as significantly as most others. This issue is also something that has prevented me from answering questions by users with 1 rep in the past, especially if they are poorly fashioned.

The Problem

New users with a programming question find SO from various methods, such as google. They ask a question with haste, hoping for a quick answer -- which they usually receive. Many of these users have no interest in Stack Overflow itself, but are simply interested in getting the solution they require. As a result of this, they'll check the site regularly for the first day or two until a sufficient answer has been posted. Once they get what they need, they bail; without the required rep or understanding that they should up-vote and select a response as the answer.

The Result

A great many questions on SO are abandoned by users with no intention of ever coming back. The answer they require has been provided, but for one or more reasons they have neglected their duty of contributing back by way of awarding reputation.

The Reach

(Since Jeff loves Datum)

Some queries on the data dump examine the reach of this 'problem'.
The query I used is based on extensions of the following base query;

SELECT p1.Id, p1.Score, p1.OwnerUserId, p2.OwnerUserId, p2.Score
FROM posts p1 
INNER JOIN posts p2 ON (p1.Id=p2.ParentId)
LEFT JOIN users ON (p1.OwnerUserId=users.Id)
WHERE p2.Score >= 2 
AND p2.Score = ( SELECT MAX(p3.Score) FROM posts p3 WHERE p3.ParentId=p1.Id )
AND users.Reputation < 15
AND p1.PostTypeId = 1
AND p1.AcceptedAnswerId = 0

Result: 3,288 Questions by users with under 15 rep which have answers with 2+ up votes that have no accepted answer.

Adding:

AND (users.LastAccessDate-p1.LastActivityDate) < 604800 // 1 week
AND p1.CreationDate < 1249084800 // 1249084800 is 1 week before latest dump data

to the where clause further reveals that 877 questions that have answers with 2+ up votes have no accepted answer, and the owner of the question has not returned since the week the question was asked.

Modifying there where clause, and removing the left join:

AND p1.OwnerUserId = 0  

Reveals a staggering 3,675 questions with answers of 2+ votes by deleted users. These are questions that were probably answered but the users who did the work can never be recognized.

Building off the previous and using an even more restrictive WHERE clause

WHERE p2.Score >=5

Still 1,178 posts that can never have an accepted answer. How many posts are there with over 5 up votes that don't provide the correct answer?

Modifying the where clause for Reputation to

AND users.Reputation = 1

Still reveals 388 questions by users with 1 rep have been abandoned.

Solution

Similar to how bounty questions work, if a user has abandons the site (not active since x time after the question was asked) with a question that has answers with 2+ up votes, force the answer with the most up votes to be the selected answer. This will reduce the amount of questions that are unanswered, and also give users more of an incentive to answer questions by new users without extra hesitation.


Update

Added more statistics for deleted users.


Please feel free to add/remove rules to make this a truly practical feature.

21
  • 15
    What about people who did select an answer, but is now down-voted into oblivion Commented Jul 23, 2009 at 23:43
  • 3
    ++ well put .
    – redsquare
    Commented Jul 23, 2009 at 23:44
  • Brad .. that shouldn't be affected. This should only affect questions where no answer was chosen. Commented Jul 24, 2009 at 4:55
  • 1
    How about auto-accepting an answer if the user gets deleted (which happens after they haven't visited the site for ~2months, IIRC)?
    – a_m0d
    Commented Jul 24, 2009 at 6:23
  • 22
    Just let the community choose with up votes. What is the benefit of marking it green? I like green being driven by the asker because it implies that the data actually solved there problem. If the community is able to drive the green answer that won't be a valid inference all the time.
    – spoon16
    Commented Jul 24, 2009 at 6:33
  • 12
    @spoon16, There's a non-trivial amount of rep involved (over 100k), which would both encourage answering questions by new users, and would clearly mark the questions as answered for future viewers. Commented Jul 24, 2009 at 6:56
  • 8
    It's entirely possible to get upvotes while not actually answering the question. As I see it, the selected answer is for giving a good enough answer to solve the OP's question. Forcing that merely makes it an extra bounty for being the most voted for answer.
    – Cian
    Commented Jul 24, 2009 at 8:25
  • It shouldn't be a users fault that his question was abandoned. It's also possible to win a bounty without providing the correct answer, and more is on the line for the OP. IMO this system is no less fair than systems that already exist inside SO. Commented Jul 24, 2009 at 12:33
  • 1
    Ian, I'd be interested to see how the numbers change if we only look at users who never came back even one day after posting the question. I see a lot of these questions when the user's question was incomprehensible or very unclear, the user never even responded to comments to clarify, and all the answers were therefore wild guesses about what the user wanted. I'd be interested to see numbers on that. Commented Jul 25, 2009 at 20:09
  • 7
    I'm sure it was suggested, but how about moderator, human verified accepted answer? just like editing or closing - for example, many find the accepted answer to be wrong, or "down-voted to oblivion" (or non existent) - user clicks "edit accepted answer" (minimum 5,000 reputation) and needs 4 more users to vote on the same answer to mark as green... I mean, if respected users can edit a question and make it an excerpt from moby dick if they want, what is the risk of giving a little more?
    – Eran Medan
    Commented May 9, 2012 at 4:34
  • 3
    Are there any indications why the feature was rejected?
    – Ian
    Commented Jul 5, 2013 at 12:22
  • 1
    Agree with @Ian. What is still lacking in creating a solution to this problem? Here's a great example of this problem (+7 question, +12 answer, user deleted, no accepted answer...) stackoverflow.com/a/1102087/945456
    – Jeff B
    Commented Jul 12, 2013 at 20:57
  • 4
    @JeffBridgman: I find it frustrating having an answer with a current score of 45 yet being unable to claim a silver badge :( I want the badges - that's what motivates me... gamification.
    – Ian
    Commented Jul 24, 2013 at 12:53
  • 1
    Any updates on this? Possible to reopen mods? Commented Nov 24, 2014 at 17:54
  • 4
    Having come across over 6 years later, I find it very interesting that there is no accepted answer... Commented Apr 1, 2016 at 17:01

12 Answers 12

50
+25

Accepted answers send a better signal to the Internet about what is the solution to the problem.

@MK01's answer is on the right track. There is no need to pursue automated solutions here.

  • After 90 days of inactivity by the question-author, answers with 2 or more upvotes should qualify for community accept-answer votes
  • 5 community accepted-answer votes shall cause the answer to be accepted
  • Users with 7500 reputation may cast accept-answer votes. This will create an incentive for users to reach 7500 rep, as there is a gap between 5000 and 10000.
    • Any sufficiently high rep requirement will do. My suggestion is 7500 for the stated reason.

Should the review queue be used for community accept-answer voting?

  • This might get too complicated, because you would probably want to limit based upon tag expertise.
  • Version one of this feature might be better off leaving it to the individual tag-communities to deal with it manually.
  • A new search filter to show answers that qualify for community accept-answer votes may help with this. I'm not sure how painful it will be for the SO team to add information to the elastic search index and adjust the query (or query builder) or if an index rebuild would be required.

For example, the DotNetNuke users could mobilize to close poor/invalid questions and voting to accept correct answers to abandoned questions. Stackoverflow is a primary source for DNN information and can be made much better with accepted answers to abandoned questions.

2
  • 28
    Funny how you are a deleted user who now falls into the category we are talking about. And you made such a good answer here too.
    – user212646
    Commented Sep 11, 2013 at 20:03
  • 4
    @user212646 You are also a deleted user?! 😂
    – cobrexus
    Commented Feb 28, 2020 at 19:48
45

I'd certainly like the 30 or 45 rep I'd get from this change, but I think its important to distinguish between auto-magically chosen "correct" answers and actual human-verified answers.

A different visual style should be applied to distinguish the two at the very least.

4
  • 1
    Also, if the original poster ever does come back, they should be able to change it. Commented Jul 24, 2009 at 4:55
  • 9
    Against. Different visual style would just complicate the site without adding much benefit.
    – mafu
    Commented Jul 24, 2009 at 7:08
  • 1
    There's nothing wrong with an Orange Check Mark to indicate the question was auto-answered.
    – JoshDM
    Commented Feb 17, 2013 at 6:06
  • 3
    It's nice to see that this feature was considered, once upon a time. It's a shame that every subsequent suggestion on Meta now receives downvotes and passive-aggressive answers instead. Any plans to revisit these issues? meta.stackoverflow.com/q/354584/534406 Commented Aug 6, 2017 at 21:55
20

So what's the problem if there are questions without an "accepted" answer? It still will be clear what post is considered the best one, by the number of upvotes.

What is there to gain by forcing one of the posts to be accepted? You won't even lose rep because people will keep upvoting the answer, trying to "convince" the OP to accept it.

In fact automatically making highly voted answers accepted would just make the whole "accepted" feature pointless. Currently "accepted" means that the OP thought this answer solved his specific problem. With automatic accepting of answers it wouldn't really mean anything anymore.

5
  • 12
    The problem is that the 'unanswered' tab is becoming unusable - though it's not 400 questions less that will change that, I fear.
    – Benjol
    Commented Jul 24, 2009 at 6:50
  • 4
    Just because the user has low rep doesn't mean that the top answer really solved his problem. Also low rep doesn't necessarily mean the user doesn't visit the site regularly, there are 1-rep users with the Enthusiast badge. Even if the user really never comes back, marking the top answer as accepted doesn't serve any purpose other than handing out a few more badges. And it only clutters the "unanswered" tab if no answer has received two (?) upvotes. In this case there just is no answer voted high enough to be considered answered, automatic acceptance won't change that.
    – sth
    Commented Jul 24, 2009 at 10:28
  • 12
    Did you even look at the queries? I'm not assuming they didn't visit the site, they don't visit the site, period. I selectively targeted ONLY these users. This idea wasn't about fixing clutter, it was about properly rewarding users for their actions. Commented Jul 24, 2009 at 12:36
  • 7
    @Benjol: Questions with answers that have a score of 2+ aren't shown in the unanswered list. That isn't a problem.
    – Gnome
    Commented Jul 12, 2010 at 2:23
  • > What is there to gain by forcing one of the posts to be accepted? Well, for one thing, the question will stop getting automatically bumped for no reason. Also, people will see that the question is closed which will avoid (or at least reduce) people adding answers to a question that is already satisfactorily answered, just because they see it is still open and don't notice that the question was asked a long time ago (particularly with people who are eager to redundantly answer the question in the hopes of getting a few points).
    – Synetech
    Commented Jul 5, 2012 at 21:56
19

Maybe there should be a vote similar to the close vote? Perhaps just 2 "accept" votes?

1
  • I think this answer is the simplest that keeps the spirit of accepted answers while taking care of the abandonment problem. We could automatically apply it to Questioners with less than 100 rep who haven't been seen for 3+ days. Of course if the original Questioner returns they can always "unaccept" an answer they don't like. Commented Oct 7, 2019 at 19:08
8

I do not see a particular need to have all questions end in some final end state: Answered and/or Closed.

Furthermore, the solution you suggest is susceptible to more incorrect answers than I think you realize, thanks to the Fastest Gun in the West Problem.

2
  • If those answers don't receive upvotes, I don't see the Fastest Gun in the West as being a problem. Speed says nothing about the quality
    – Ivo Flipse Mod
    Commented Jul 12, 2010 at 8:28
  • 2
    @Ivo Forgive me if I've misunderstood you, but isn't that misunderstanding the nature of the FGITW problem? It's a mix of sloppy/early voting and pile-on voting. Speed doesn't say anything about quality, but the votes do (sometimes) say something about speed instead of quality.
    – Nicole
    Commented Aug 18, 2011 at 3:15
5

To further the Axeman, perhaps to add to the sex appeal of the Guru tags is to add the responsibility of reviewing the 'unanswered' tags.

The fact is that most 'unanswered' posts have been answered but not accepted. It probably wouldnt be good just to award the ones that have actually been answered with at least one upvote by 'accepting' the upvote/time priority winner when it might not be the 'best.'

Maybe there should be a view, available for those that have been awarded the gold guru tags (1000x upvotes for a tag), that concentrates list the 'unanswered' questions. For those elite, they have extra votes: the ability to select the answer for the asker (after an elapsed time), the ability to close (as indecipherable, etc) or leave open or offer a bounty from the community chest questions that have no appropriate answer.

5

Why not take the system of voting to close a question and apply that to answers? People that can vote to close have enough time invested in the site that I think they can be trusted to let loose on the thousands of un-accepted questions on the SO site. But lower it down to 4 since having 5 votes would be hard and this system will fail and 3 or below is just to few.

2
  • 3
    System already floats up correct answers by community voting.
    – random Mod
    Commented Jul 12, 2010 at 1:48
  • I was saying that with manual acceptance questions where only one answer was voted on don't automatically obtain accepted status.
    – TheLQ
    Commented Jul 12, 2010 at 2:07
3

There are certain benefits to asking a question, and one of them is selecting the answer that best helps you. Even if you change the meaning of "accepted" from "the question owner accepted this as the best answer" (viewable as a tooltip over the green check), auto-accepting still lacks cohesion. And if you don't change the meaning of "accepted", it would just be wrong. Note how the bounty system was recently changed to avoid this.

In cases where the OP no longer exists (deleted or only effectively nonexistent because they won't visit the site again), the community still automatically "selects" the best answer by voting. What is the problem you are trying to solve that this doesn't already address? The +15 rep, indicated by "...that they should up-vote and select a response as the answer"? That is a very minor issue for me, and not nearly enough to justify speaking on someone else's behalf.

There's additional issues, such as what if a new answer is posted and becomes the top-voted, after the auto-accepting has taken place? Should it be switched? Why even have it in the first place? Sorted by votes already accomplishes the desired behavior of emphasizing the community-selected best.

0

So I'm here from this question.

@user133440:

Accepted answers send a better signal to the Internet about what is the solution to the problem.

Spot on. The good thing is with community accepted answers they could flux to NEW answers that address new versions of the code in question.

The problem is when you get a question like mine here - this takes a lot of knowledge and from speaking to guy on LinkedIn afterward quite a few hours, he had to go and download a dataset (COCO), replicate my setup, implement my scripts, use test images, the Docker setup for that alone is a very large pull - but he did it, I accepted and awarded the bounty.

If I hadn't it would just put people off answering tough questions, because it's not going get thousands of views as it's specialist, but it is invaluable to those that are working in the field. For Stack Overflow it means you attract more niche skillsets and for people like that awesome guy he'll carry on putting in the effort.

Note: TensorFlow 2.0 just came out so while he is correct now, it takes at least an hour to install everything fresh, and I bet they'll be a new one to deal with a version soon from someone else.

I guess the thing is by having an "Accepted Answer" people feel deprived when it's right, but not accepted, as they're missing the rep through not a fault of their own. You could have Rank 1 answers, so the "accepted answer" is right at the time, and fresh answers award points for being the most upvoted. Which can change as time goes on.

I'd be interested to find a way of querying Stack Overflow (as the example) to see what stats are for questions that are abandoned older than two years that don't have an answer and upvotes across multiple answers.

0

Why accepting is important?

Apart from the fact that accepted answer helps you to make sure that problem has been resolved (at least in most cases), it somehow sends the signal to new users that this question has already been answered and post a new answer only if you really have something to add.

How to implement community accepting an answer? (Should we?)

As mentioned in other answers here, there should be a difference between OP accepting an answer and community upvoting an answer. Therefore, community accepting an answer seems not like an option. But... read below;

How to make active users considering accepting answers?

Meanwhile, I think users with many questions that have upvoted answers but not accepted ones should get a little push towards reviewing their posts. At least make those active ones to pay their dues. Probably making them to mark the answers as not accepted, to explicitly claim that they did not get their answer or leaving a comment saying that they have considered accepting while between the answers neither one is significantly better or, in some cases, stating their problem is not yet fully resolved. This way, we still give them the choice of not accepting but not just because of ignorance.

-1

I think it should be reviewed by the subject matter experts to decide if there even is an answer in the list of responses.

2
  • But isn't that what flagging (answers) is intended for?
    – smci
    Commented Dec 2, 2011 at 11:12
  • 1
    @smci No. Please no.
    – bjb568
    Commented Sep 17, 2014 at 2:36
-1

we can use the time to vote for the accepted answer. For example, if one question has been inactive for about one year. Then we close it.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .