I sometimes come across questions which have good valid answers but I have some additional information to be added (like I did in this one for example Why bother with abstract or interface classes?).

Is it a good practice to only add more information? I don't want to repeat what other people said to not be seen as copying from them. Is that ok or should all answers be complete?


I've already modified my answer based on the suggestions I received. Previously it only had the bottom part about documenting intention.

  • Especially in light of the open-ended nature of the question, your answer was fine. The general answer to your question is rather trickier...
    – blahdiblah
    Oct 25 '13 at 0:00
  • I would say that question is simply "too broad" as there is always something more for someone to add. An answer, no matter how good, will always seem incomplete.
    – Servy
    Oct 25 '13 at 0:13
  • That does look like it would fit just fine in a comment.
    – Servy
    Oct 25 '13 at 0:16
  • 1

Be very careful with this.

Stack Overflow is a primarily (always?) a factual site. Very rarely can a factual answer be expanded upon in a way that shouldn't simply modify an existing answer. However, it is possible to do. What you need to ensure is:

  1. You're actually answering the question. If you're not answering the question in a direct way, you need to revise what you're doing. If you're offering, for instance, an approach that is not what the author asked for, you probably shouldn't post another answer. If you're expanding on an answer in a way that directly pertains to the problem, it's alright.
  2. Your answer actually needs to be written in an answer. This implies that your answer is long, complete, and would not be better suited as a modification to an existing answer. If these conditions are met (pay attention to the last one), you're doing okay.

The conditions are slightly different on open-ended/subjective questions, which do not appear on Stack Overflow.

When answering a factual question, what you really need to ask is this: Does my answer provide a viewpoint that directly pertains to the question, and that does not exist in another answer? If you're answering a subjective/open-ended question, you need to ask: Does my answer provide a viewpoint that has not already been discussed? Am I providing anything new?

I would personally say that your answer would likely be better suited as a comment. It is a useful qualification to the answers, but it doesn't really directly answer the question.

  • Thank you. I've modified my answer based on your suggestions.
    – Szymon
    Oct 25 '13 at 1:19
  • 2
    As well, make sure your answer could stand on its own, and doesn't rely on another answer Oct 25 '13 at 6:27

I agree entirely with Emrakul's answer. One point that I believe was glossed over, though, is that it's certainly possible to write an answer which refines another, so long as you're putting a good deal of your own work into it. Say the original answer missed two important edge cases, and you have a particularly clean way to cover them. You might write code that uses the same basic procedure but represents a more thorough solution. Like Emrakul said, as long as your version stands on its own as a way to resolve the problem, it should be a good SO answer.

You see how annoying this is? And then someone else comes along and expands on my answer in their own post. Now it's like we're in a forum.

You must log in to answer this question.

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