Politicians do it all the time: "Answer the question you wish you were asked, not the question you were actually asked." And reporters are pretty bad at taking this on.
The format of a typical press conference is designed to make it hard for a reporter to follow up when the politician dodges their question, because the politician usually moves on to the next reporter. If they ever get a chance to ask a follow-up, it's after the original context is long gone from anyone's working memory.
If reporters really wanted an answer to the question, the next reporter to be called on could just press for an answer to the previous question. But they don’t; in a press conference situation, the goal of reporters is to be seen, so their fame goes up, and to avoid antagonizing the host, since if they do, they won’t be invited to the next press conference.
Eh, that's part of it, but it's also that the next reporter already knew which question they wanted to ask. They probably didn't pay that much attention to the answer to the previous question because they were busy formulating their own question.
While I agree that it’s not useful if people are using this to show off, I’d prefer to deal with a few know-it-alls if it means that better product decisions are being made, and dev teams are spending less time building things that customers can’t use or didn’t even want.
The way I see it, there are failure modes with both extremes. I’d prefer the failure mode that involves some occasional annoyance over the failure mode that results in significant amounts of wasted code/effort, and a return to the XY framing anyway when things go wrong.
Ideally, people who are using this find a balance, and can recognize the difference between an obviously straight-forward request and something that needs deeper exploration.
It’s not perfect, but I think it’s a better default.
If they don't want to explain how to do things in a way they disagree with, then the appropriate response is to not say anything at all.
The current culture on SO is to flood questions with "don't do X, do Y", then upvote those answers. The result is that questions look answered but actually aren't, so the questions stay unanswered. When I come along months or years later having already considered all options, I don't want to have my time wasted by a question that perfectly matches my goal but was never answered because it got drowned in alternative approaches that I already ruled out.
> The current culture on SO is to flood questions with "don't do X, do Y", then upvote those answers. The result is that questions look answered but actually aren't, so the questions stay unanswered.
I think this is the #1 reason why SO isn't a great resource for me.
Isn't it the question author who gets to choose when an answer is satisfactory or not on SO? If a question is full of answers that aren't marked as satisfactory, then there's still an opportunity for someone to come in and get the points by providing a different one. What more can they do, ban people from trying to provide alternative solutions? Surely that is going to create much more harm than good.
> Isn't it the question author who gets to choose when an answer is satisfactory or not on SO?
This would be a fine policy if SO didn't also make a huge stink about duplicate questions. As is, there's one canonical copy of each similarly-phrased question, and a re-ask that says "but for real, I actually want to do it this way" is going to get shut down as a duplicate.
> If a question is full of answers that aren't marked as satisfactory, then there's still an opportunity for someone to come in and get the points by providing a different one.
The system rewards being one of the first responders, not the one who actually answers the question. This is especially true now that they've updated the system to place the highest-voted answer first rather than the accepted answer.
> What more can they do, ban people from trying to provide alternative solutions? Surely that is going to create much more harm than good.
I don't know that there's anything the company can do, since it's pretty clear that they've lost control of most aspects of the culture.
Okay, but I've been in plenty of conversations where I ask "I read in a book that we should be doing X, how are people doing X?"[1], and the answers I got, _from a community that included the book author_, were "first, make sure you're doing A, B and C."[2] When in fact I am doing that already. Do I have to really preface every question with "i promise i'm not the idiot you assume I am?"
1: "This book says to monitor ML systems for distribution shifts; what tools are people using to store that data and monitor for changes?"
2: "Make sure you're monitoring normal SRE statistics like request failure rate"
> Do I have to really preface every question with "i promise i'm not the idiot you assume I am?"
Yes, first of all I do think it's up to the person looking for help to fully elaborate their situation in such a way that makes it clear why the X/Y problem doesn't apply to them, since other people with similar issues who stumble upon your thread might not realize that you have that additional context, and the answer is just as much for them as it is for you (if not moreso, since you're just one person).
Secondly, even if you did fully elaborate your situation, it may be that there are people interested in trying to help who don't know the answer to X but do know the answer to Y, and by answering Y they are still providing more value than not answering at all. There's nothing about answering Y that prevents X from being answered by someone else.
> other people with similar issues who stumble upon your thread might not realize that you have that additional context, and the answer is just as much for them as it is for you
IMO, this is what books are for: advice for some form of large common denominators. And if I cite a book, I think it's fair game to assume I am familiar with its contents. And if you encounter my question and haven't read the book, I would hope you benefit just by knowing it exists and maybe even read it.
> Secondly, even if you did fully elaborate your situation, it may be that there are people interested in trying to help who don't know the answer to X but do know the answer to Y, and by answering Y they are still providing more value than not answering at all.
I mean, the longer a thread on slack is, the fewer people bother reading it all. And I have to read it as well before I know it's not actually helping me.
Agreed! Which is why I think it's especially disrespectful to criticize people making honest efforts to help as being "know-it-alls trying to show off" in cases where their idea of the ideal kind of help is different than what the original poster had in mind.
It's frequently NOT an honest effort to help. It's just "well that's a stupid question, let me show you how I know more..."
When you really are trying to help and you think it's an XY you can answer politely by actually answering their question and then saying "but you may want to do this instead". Try it.
Indeed, a good answer to X will make clear why Y is the better option in most cases. But its a thin line to tread between subtly implying that X is bad, and saying "only idiots do X, anyway here's how an idiot would do X".
You suggested that in your previous comment, and I explained already why I don't think that's a good idea: it's liable to cause your alternative suggestion to get ignored and proliferate bad practices.
If someone has a genuine desire to help, then they also inherently have an interest in making sure people don't continue down paths which are likely to lead to more problems in the end. Otherwise, you might end up spending more time supporting the follow-on issues created due to the misapplications of your own advice than you spent providing the support in the first place, which would not be an efficient way of helping.
> it's liable to cause your alternative suggestion to get ignored and proliferate bad practices.
I just don't think that is the case. On the rare occasion that somebody has answered like this to me I've just read their answer and thought "oh right that makes more sense I'll do that".
If you ever find a question that you think is an XY problem, answer X first and then say "did you want Y?".
The worst possible answer is "you should be asking Y".