Every now and then I hear people say I might have an "XY problem". What is that?

"XY Problem" explanations by various people:

You want to do X, and you think Y is the best way of doing so. Instead of asking about X, you ask about Y.

from Re: sequencial file naming by Abigail

You're trying to do X, and you thought of solution Y. So you're asking about solution Y, without even mentioning X. The problem is, there might be a better solution, but we can't know that unless you describe what X is.

from Re: How do I keep the command line from eating the backslashes? by revdiablo

Someone asks how to do Y when they really want to do X. They ask how to do Y because they believe it is the best way to accomplish X. People trying to help go through many iterations of "try this", followed by "that won't work because of". That is, depending on the circumstances, other solutions may be the way to go.

from Re: Re: Re: Re: regex to validate e-mail addresses and phone numbers by Limbic~Region

To answer question Y, without understanding larger problem (the context) X, will most likely *not* help them entirely with X.

from <> by merlyn. Message can be found here.

A.k.a. "premature closure": the questioner wanted to solve some not very clearly stated X, they concluded that Y was a component of a solution, and now they're asking how to implement Y.

from <> by Alan J. Flavell

The XY problem is when you need to do X, and you think you can use Y to do X, so you ask about how to do Y, when what you really should do is state what your X problem is. There may be a Z solution that is even better than Y, but nobody can suggest it if X is never mentioned.

from <> by Tad McClellan

When people come [in here] asking how to do something stupid, I'm never quite sure what to do. I can just answer the question as asked, figuring that it's not my problem to tell people that they're being stupid. . . . But if I do that, people might jump on me for being a smart aleck, which has happened at times. ("Come on, help the poor guy out; if you know what he really need why don't you just give it to him?")
. . .
On the other hand, I could try to answer on a different level, present a better solution, and maybe slap a little education on 'em. That's nice when it works, but if it doesn't it's really sad to see your hard work and good advice ignored. Also, people tend to jump on you for not answering the question. ("Who are you to be telling this guy what he should be doing? Just answer the question.")
. . .
I guess there's room for both kinds of answer. Or maybe there isn't room for either kind.

from <6lnb70$lct$> by MJD

MJD also posted an earlier diatribe on the subject, which has become a USENET classic: Re: I never get answers to questions in newsgroups.
It has been updated several times over the years; one version appears to have been the origin of the famous "Retardo!" quote.
His latest version is on his website: TIP: How to post good questions.

Too bad that the more general problem, X, is often considered off topic for this forum. Y has more of a chance to look like a Perl problem.

from <> by bart


by me, just now.

See Also

ESR's How to ask questions the smart way includes a Q: How can I use X to do Y?

In XYZ Questions, chromatic suggests that people try to answer both the X and the Y.

On Answering Questions is an excellent article by merlyn, where he quotes this message he posted on the unix-porting mailing list.

StackExchange has a page with a rather exhaustive treatment of the topic.

We're building the house of the future together.