Once in a while, I come across an answer, often flagged as not an answer, that says something along the lines of:
After fiddling with my code for a bit, I found that changing the
Foo()
calls toBar()
calls solved the problem.Can someone explain to me why
Foo()
didn't work to begin with?
These are usually self-answers, but occasionally someone might find a solution to someone else's problem and not understand why it works either. (Such answers could take the form of a code snippet rather than prose.)
If this answer consisted only of its first paragraph, it would be just like any other answer and never have been flagged as NAA to begin with. However, the second paragraph is essentially a question about the content of the answer. I can see flagging such an answer as NAA as others may post answers to the question addressing the question in the answer, turning the whole thing into a forum thread. On the other hand, I don't agree entirely with deleting the actual answer either.
It doesn't seem like I should convert it to an edit, especially if it's also been accepted by the asker, since as mentioned the first paragraph does actually answer the question (or offer a solution to the problem). At the same time, removing the second paragraph entirely could give the author the impression that it's not OK to inquire about the solutions you find to your programming problems.
What I would do if this had been my own answer to my own question, is to post the first paragraph as an answer, and ask for clarification as a comment (or a separate question entirely). I can't do this with other people's posts, though, because mods can't convert answers to comments on themselves since it means deleting the answers in the first place.
Alternatively, if I feel that enough people could benefit from it as a separate question, I can find a way to express it generally, and go ahead and post a brand new question, linking to the answer for context if necessary.
But how should we deal with the existing answers, as moderators and as community members?