6 ms·
There are a few people who frequently have this complaint, but I don't think it's a real problem. If you actually need to do Y in a situation where most people
by chowells 5y ago
There are a few people who frequently have this complaint, but I don't think it's a real problem. If you actually need to do Y in a situation where most people who think they need to do Y are wrong, it's not everyone else's responsibility to divine that you are the magical case. It's your responsibility to demonstrate that you actually do know what you're doing.
This isn't something you do by discussing how unfair other people are. It's something you do by communicating the constraints you're working inside, your knowledge of more typical solutions, and why they don't work for you.
If you aren't providing that information, you're wasting the time of everyone who is voluntarily helping others. It's not their fault that you're not providing critical information for answering your question effectively.
When you're the special case, you have to communicate that fact. It's just wasting everyone's time when you expect others to know it without communication.
- jbay808 5y agoIf you're the one asking the question for the first time, yes, you should make it clear in your wording that you know about X and you really want Y. There are two failure modes though: 1) You really want to do Y, not X. You are not asking the question, just searching for the answer, and find that "how do you do Y?" question, and the answer is "do X instead". Because you're a special case, these answers will likely dominate your search results. 2) You decide to ask the question. You make it very clear that you want to do Y, not X. Your question is closed as a duplicate of the one whose answer was "do X".
- LanceH 5y agoI've come across this multiple times. Some communities are worse than others on StackOverflow about it. Golang in particular seems to look for reasons not to answer a question, and I've come across your 2nd more than once. Typical situation: I get called in as a consultant/freelance/whatever, I inherited X. I can make a small patch if I can do Y. Even when I preface it with "I would normally rewrite X correctly, but that touches on all systems, how can I do Y?" It turns straight into an argument about doing X right. It's like I'm driving, make a left turn and end up lost. They are telling me to make the right turn at Albuquerque instead of the left. Other scenario is that I'm trying to glean some insight on the language and I'll reduce a problem to bare basics and ask something like, "what's going on here?" They will answer "don't use that, use X library instead." That wasn't the question, the question was what's going on with the programming language -- why is it acting weird. I know that nobody would write the code that way, I isolated the problem to specifically inspect a single element.
- tedunangst 5y agoThis happens all the time, and no, not only in super exceptional special cases. Ask how to change the spark plugs on a Lotus. Nobody has a freaking clue, but their neighbor told them Lotus is unreliable, so you get half a dozen yahoos replying "you should buy a Toyota, it's more reliable." Thanks, geniuses, but I already have a reliable car, I also happen to like playing with my Lotus, which I did not purchase because I was tricked into believing it was a great value. I feel I should not need to provide a full inventory of my garage and driving habits to ask a basic question.
- chowells 5y agoOk, you're annoyed at rude people. That's fair. Rude people are maddening. But that's not what the XY problem is about. There is no case where "you should have bought a Toyota" is a valid response to "how do I change the spark plugs on my Lotus?". That's just internet jerks being... Jerks.
- deleted 5y ago[deleted]
- at_a_remove 5y agoThat sounds great in theory, but in practice you end up having this enormous, long list of "defenses" as to why it isn't an XY problem, and then ... people will ignore them anyway. This has happened to me on Hacker News. People hit that XY button more than needed, and I have seen this even in the earliest days of Linux. I remember, pre-Google, when asking some questions on IRC about recompiling the kernel for my distro, I would get smart-ass responses like "What you should have done is selected this other distro." It's led to me rarely asking questions if I think the issue could be construed as XY.
- Blikkentrekker 5y agoI even have this issue in language learning. I ask a quæstion about a specific, unusual grammatical form in a language I find hard to understand, and I am met with “You should instead phrase it in this more basic way that you already understand.”. I am obviously not asking how to translate the specific example sentence I conjured up, I am asking about how to use the specific grammatical form I inquired about.
- SatvikBeri 5y agoI've had two cases on SO where I explicitly started my question with "I know X is the standard way to solve this problem, I can't do X because I work at a big company that has policy Z which prevents that, so I'm trying to make Y work, here's what I've done..." and the question was marked as a duplicate of a "how to do X?" question and closed. I've also had plenty of good experiences on StackOverflow, so YMMV, but in general I've found other forums better.
- coldtea 5y ago>There are a few people who frequently have this complaint, but I don't think it's a real problem. If you actually need to do Y in a situation where most people who think they need to do Y are wrong, it's not everyone else's responsibility to divine that you are the magical case. Well, that's strange, because what they do is still divining. They try to divine "what you actually wanted", even though you asked another thing. Even worse, a lot of the time the one doing the asking has explicitly said "I know this is unorthodox" or "just answer how to do Y please, don't give me your 'better' options". It's especially annoying when what you what to do is hack something (and not do it the official way), bypass some restriction that absolutely prevents X, try an alternative style, push the envelope, or generally think Y is better even though the "conventional" sheep-like answer is "do X". An example of the latter would be trying to use Java with simple POJOs and lite patterns in ~2005, and everybody suggesting you go through some monstrous J2EE setup with half the GoF book thrown in instead because that's "idiomatic". Or e.g. trying to ask about trying to use a regex to quickly parse some known-quantity HTML where regex will work just fine (say, extract all href out of all a elements), and everybody insisting they lecture you on proper html parsing instead, not caring about your use case.
- dsr_ 5y ago'a lot of the time the one doing the asking has explicitly said "I know this is unorthodox" or "just answer how to do Y please, don't give me your 'better' options".' After being burnt by a person who never wanted to do anything in a conventional, well-supported way* and kept making that explicit request, I have given up volunteering my time to appease them. At work I get paid to say "I know a couple of ways of doing that, but if you could tell me more about your problem and the constraints, I can give a better answer." *Problem: router and three laptops need to be networked. Conventional solution: ethernet cables or wifi. Requested solution: IP over serial (SLIP or PPP) over USB-serial connectors. Had not purchased USB-serial adapters.
- AnIdiotOnTheNet 5y ago> After being burnt by a person who never wanted to do anything in a conventional, well-supported way* and kept making that explicit request, I have given up volunteering my time to appease them. That's fine and completely fair. Just don't provide unasked for answers as an alternative.
- mjw1007 5y agoIt is a real problem. I've never asked a question on Stack Overflow, but many, many times I have entered a question into a search engine, received a Stack Overflow link with my question at the top, and been greeted with several screens full of text none of which is an attempt to answer the question. In other contexts Stack Overflow's conventions are set up on the understanding that they're trying to produce a curated database of questions with their answers, rather than acting as a technical support forum for individuals. It's a real shame that culture doesn't extend to dealing with this case properly. (The most common case is where the question is something like "does A provide a function for doing B?" and the correct answer is simply "No".)
- yukinon 5y ago>When you're the special case, you have to communicate that fact. It's just wasting everyone's time when you expect others to know it without communication. I strongly disagree. The base assumption is to take it at face value, and therefore should be to answer it that way. The recommendation that comes after is always the optional part. You're wasting everyone's time if you give the Y only, and optionally the X.
- Kranar 5y ago>it's not everyone else's responsibility to divine that you are the magical case. The irony here is that the only divining happening is assuming that I should be doing Y when I specifically asked for a solution to X. What you're proposing also requires me to divine all the ways that people will say "Don't do X, do Y." and explicitly state how I don't wish to do Y but really just want to accomplish X. "I'd like to accomplish X. No I can't do Y1 since E1, no I can't do Y2 since E2, ..., Y_N since E_N. Please just stick to X." It would be better if people just stuck to X in the first place, instead of doing all this divining. It also makes it really frustrating for others who share problem X and search for solutions to problem X, only to get people solving problem Y.