Sometimes I read a question that has an accepted answer, and I feel I won't add any value if I answer.
Should one wait to accept an answer in order not to discourage a potentially better answer?
Accepting an answer discourages further answers. A few answers may trickle in after, but many (most?) members care a lot about reputation, so they won't answer anything that's old or that has an accepted answer.
That's why I usually don't accept an answer unless it nails the question. In other words, if, after a day or two, I still have only a collection of partially correct answers, I don't just accept the one that is "least wrong."
I do believe that it discourages more answers. That's why I typically wait for a while before awarding a check mark on a question, unless the answer was spot on exactly what I needed (such as in "how do I..." questions). After giving it a day or two, then I will tend to revisit questions and award check marks to the best answers.
Accepting an answer does discourage new answers. The system is even designed to look for unaccepted answers.
But I feel you should accept an answer when your problem is fixed. Whenever that is. Of course there are limits to when you think should accept.
If your problem is fixed, a better answer is either "do something else because of X" or the same as the accepted but more info on the issue.
And you can easily monitor new answers to your question from the envelope. So you should be able to see if anyone adds to your accepted question.
From the questioner's point of view accepting an answer means "thanks to this answer I've solved my problem". So if that's the case then you as questioner should accept the relevant answer. You don't owe any future potential answerer's anything.
From the answerer's point of view it shows which questions we shouldn't waste our time answering as no one is going to be particularly interested in the answer. We can go off and search for questions no answers or no accepted answers and try there.
So yes accepting an answer will discourage more answers, but that (in my opinion) is a good thing. There's nothing stopping you adding a new answer if you think that there's something missing from the answers already there.
While I agree that it in general discourages new answers, it definitely does still happen - and often in batches. For example, this question yesterday (which is over 6 months old and has an accepted answer), suddenly gained 3 new answers. Obviously somebody stumbled into it, thought it was interesting and added an answer. It jumped to the front page and 2 other people thought it was interesting and added an answer. These all fell into the 3rd bullet on Jeff's answer above.
If you're happy that your question is answered, set the green tick - but you may well find you get additional answers / comments / etc long into the future.
Marking only one post as the accepted answer is not flexible, in my opinion. For a given question, there may be two or more different ways to achieve it, each possibly equally valid but just depending on the situation. I reckon using the MSDN forum style of "Helpful" answer is a much more flexible style.
I would say so, as it implies the original person looking for an answer doesn't need it/won't check back. I'd only accept an answer that actually fixes the problem I've got.
After all, questions are supposed to be objective, rather than subjective. ("Why doesn't this work" vs. "What's the best way to fix this")
I have an open question right now, and I decided to wait 48 hours before accepting one. Of the five answers I've gotten so far, two tempt me to accept them. If I'd accepted the first, the second answerer might have hesitated, but somehow I doubt it. The quality of the answer indicates a commitment to help, and they're gonna do that whether they are 'frist post' or not.
I think it does because I think I think like others. When I see an answered question I think that the odds of submitting an answer that gets accepted is low.
Initially I thought that an answered question was the end - I was ignorant that the Questioner could change their answer. Even though I know that the selected answer can be changed, I am reluctant to do better - I have seen selected answers that don't seem to be the best; and what looks to be a better answer has not been selected.
The reputation system encourages Q&A but it does not encourage the best answers.
One aspect of SO is the 'wiki' idea. How can this work with the current reputation system? What would drive me to make someone else's answer better?
I'd like to see some stats that would help us see what is going on so we can discuss this more objectively:
1. number of changes to selected answers 2. number of answers with higher votes than the selected answer 3. number of selected answers with negative votes 4. number of answers edited by others (not just typos and grammer) 5. number of selected answers edited by others
Perhaps these stats will help answer your question objectively.
If the question has adequate existing answers, I upvote those. If I can provide a better answer than any of the existing answers (whether one of them has been accepted or not), I will add an answer. This might benefit the OP and should benefit the rest of the audience.
From a pure reputation perspective, a well-viewed answer can garner much more reputation from the general voting audience than it can from its question's author. So, if you think your new answer can get enough views from voting users, it can still make sense to add answers to questions that already have accepted answers.