Meta Stack Exchange is where users like you discuss bugs, features, and support issues that affect the software powering all 158 Stack Exchange communities.

What is meta?
Here's how it works:
  1. Any Stack Exchange user can ask a question
  2. The community provides support, votes on ideas, and reports bugs
  3. Your voice helps shape the way Stack Exchange operates

A considerable portion of the questions asked on Stack Overflow are beginner questions. Often this makes the answerers considerably prone to underestimating the asker's capacity to understand their own problem, if not outright hostile. This, however, can yield a lot of false positives, because it escapes the realm of beginner questions and finds it way to potentially every question.

As an (abstract) example of this, consider that you ask a (non-beginner) question on how to do something and in the premises you explain that you are constrained to do it in a specific way. Then, someone gives you an "answer" that mostly informs you that "you're doing it wrong", while ignoring (implicitly or explicitly) the premises and, therefore, not really addressing the question that you actually asked.

Sometimes, answering patterns like the above are valid and helpful, because you may be in a domain where you're not sure of what you're doing and such responses will help steer you to the correct path. Other times, however, the pattern becomes obnoxious, because it feels like you have to include some kind of "street cred" in every question to persuade people that you're not completely clueless, that you're asking this specific question for a reason and/or that it's not cool for them to come off as rude.

Obviously, the first thing we can do, as askers, is phrase our questions in such a way that as many answerers as possible will get that we know what we're doing (if that's indeed the case). However, after we've made our best (to make what exactly we're asking as clear as possible) - if the above pattern still emerges, what's the best way to deal with it, in terms of commenting, voting and accepting?

In other words, consider being the asker in what's wrongly perceived as an XY problem:

Say that (for whatever reason) you actually want to learn about your attempted solution (which sometimes may be more general, educational and useful to you and visitors) and not about the underlying problem that you have (or, worse, the problem that the answerer decides that you have). How can you achieve that? How to deal with answers that, despite your explanations, still deal with the latter?

share|improve this question
If an answer is obviously or blatantly not an answer, flag it as "not an answer". However, most often a downvote and a explanatory comment will suffice. – American Luke May 31 '13 at 22:36
I personally prefer a (polite) comment inquiring about the limitations, first. That can avoid the situaton you note. </tangent> – Andrew Barber May 31 '13 at 22:37
@Luke If it's an attempt to answer the question, a NAA flag is not warranted. And missing the question doesn't mean it's not an attempt. – Daniel Fischer May 31 '13 at 22:38
That's why I said "obviously or blatantly". – American Luke May 31 '13 at 22:45
Ah, okay, wasn't sure what you counted as obvious/blatant in the context of this question, @Luke. – Daniel Fischer May 31 '13 at 22:47
Unless they suggest jQuery. – Cole Johnson Jun 1 '13 at 1:23
per recent discussion at Prog meta, it rather feels that when the question is not OK, it is acceptable for answers to deviate in any imaginable tangential direction. See also: What is the XY problem? – gnat Jun 1 '13 at 5:12
We should obviously create a new badge that establishes our programming 'street cred.' – SomeShinyObject Jun 1 '13 at 11:43
@Cole Johnson: But jQuery does not ignore the premises of the question in the first place, because it is the answer. – BoltClock's a Unicorn Jun 1 '13 at 11:49

This is very common with a "I am trying to do X which will do Y, but have a problem with X" question - it may turn out there is a much better way to do Y which is not X, so answers look like

  • Here is Z (which does Y)

As long as these answers include some explanation as to why Z works, I think they are fine. In fact I often learn from them myself.

The problem can come if the answer is posted with no explanation. This means the asker likely learns minimally and it is much less useful for future users. This is regardless of how good Z actually is.

Otherwise, I do not have a problem with people who ask meaningful questions receiving "try this instead because it's better" so long as proper problem solving technique is followed and the answer is explained.

share|improve this answer

If an answer blatantly disregards the premises of the question I would downvote and comment. In my experience, this regularly results in the answer being modified or deleted. I would remove the downvote/change it to an upvote when appropriate.

The situation is often less extreme, though, for example when an answer tries to persuade the asker to change the premises. In this case, my first choice is to flag it as not an answer, since I believe those kinds of arguments should be made in comments (unless a long explanation is required and provided).

share|improve this answer

A considerable portion of the questions asked on Stack Overflow are beginner questions. consider that you ask a question on how to do something and in the premises you explain that you are constrained to do it in a specific way.

Beginner questions are often not very clearly formulated. You shouldn't downvote the answers only because the question is hard to understand.

If the constraints are completely arbitrary and given without explanations, the answerers are free to ignore them, especially when ignoring them is the only way to solve the problem.

Example A

I have to position h:outputPanel on the right size, but I must do it in "JSF"-way, not in CSS..

Well, it is a JSF-way to position element using CSS. JSF is a Web framework and in Web applications we are using CSS, you know..

But my boss forbids me to use CSS because he doesn't understand it

OK so you have problem with your boss, which is not a programming questions, so either we ignore it and answer anyway or close your question as off-topic (it belongs to Workspace.SE)

Example B

I need to search particular tags in XML using regex

It's another example of people using hammer for everything that even isn't looking like a nail. So it's probably another question of my-boss-have-told-me-to or homework questions. Self-help questions are off-topic here, so again the answerers has right to to ignore the constraints that are not programming-related.

But the constraints could have a reason, which OP has forgotten to mention:

But we are using limited JVM on mobile device, so it doesn't have XML parser nor adding external library is an option, and the regex are available

OK, great, but why haven't you told that at the beginning?


If the OP doesn't give any logical reason for constraints, and the constraints seem to be absurd, the answerers shouldn't be punished for trying to solve what they guess is the real problem here.

share|improve this answer
You've mixed two of my sentences somewhat liberally in the beginning of your answer. When I mentioned "beginner questions", I mentioned them as a possible explanation for the pattern of answerers ignoring the premises in way too many questions. The problem itself is that this pattern "escapes" the realm of beginner questions and finds its way to more questions, even ones where it's clear that the OP knows what they're doing. The question remains: What if (for any reason) you need an answer to the solution, not the problem? – Theodoros Chatzigiannakis Jun 2 '13 at 7:46

You must log in to answer this question.

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