Hacker News new | ask | show | jobs
by alien_at_work 2984 days ago
It's highly presumptious to assume you know better than the person asking. You might, but you might not. The fact that SO serves as a collection of programming knowledge, you do not know better than everyone who will ever search for that question even if you do actually know better than the OP who actually asked the first time.

It would be fine to help with all these other possibilites but part of your answer should... actually answer the question that was asked, as it was asked and not doing so should result in a servere punishement.

2 comments

It's highly presumptious to assume you know better than the person asking

For me, questioning someone's question, asking more info, pointing out he/she might be doing the wrong thing, ... does not in any way involve me assuming knowing things better than the questioner or anyone. (e.g. for all I know, the asker is way more intelligent and wise and knowing than I am, but just temporarily confused - happens to me sometimes so can happen to others) Those two are orthogonal for me, it's just my nature to always question stuff. Including myself. And this certainly helps in finding solutions. And doesn't lead to me thinking I'm better. Perhaps different sometimes, yes.

your answer should... actually answer the question that was asked, as it was asked and not doing so should result in a servere punishement.

To stick with the enalogy: while the answer 'buy lamp, take ladder, unscrew old, screw in new' might perfectly answer the question, it is in my view completely useless if it doesn't solve the problem. So I'd leave a comment asking for more info. And if someone else would already have given that answer I'll probably leave a comment saying it's rather incomplete. Because it's imo the only way to actually help the OP. Why on earth should one get punished for that? Isn't it the right thing to do?

> it is in my view completely useless if it doesn't solve the problem.

Well, this is exactly the problem I'm describing: you're trying to solve the problem for one user when the answer is for everyone who could ever ask something similar enough to come to the page from a search engine. So ignoring the question and solving the problem might help the OP but it doesn't help anyone else who actually needed to know how to replace a lamp. In fact it's hurt them because now "how to move a lamp" is considered solved by a lot of people but the actual page with the "solution" does not contain one.

Yes I get your point, but again, in my opinion, if there's no Q/A yet for how to replace a lamp, the others seeking an answer should just ask that question specifically. The net result being both the original OP and the others are helped in a clear way. Unless of course someone comes up with an all-in-one answer to the original question laying out all possible reasons why there's no light. But that's the edge between way too broad vs specific question.
> It's highly presumptious to assume you know better than the person asking.

But SO is a QA site - you are only supposed to answer if you indeed know better than the person asking!

I acknowledge there is a grey area with the so called XY question, where the questioner ask about one thing but actually want to achieve something different. But in such cases the correct approach is, in my opinion, to help the OP solve the actual problem they have, not lead them down the wrong path.

I think part of the point here is that you are not just answering OP's question, which may or may not be an example of an XY problem. You're also answering everyone who searches answers using similar terms to those the OP used.

For example, let's say the title of the question is, "How do I reformat my hard drive on linux?" and the body of the question is "I accidentally screwed up my upgrade of Ubuntu by <doing XYZ> and now it won't boot. Can I reformat the hard drive and install again so I can boot?" If your answer is "Are you sure you need to reformat? Have you tried <solution to XYZ>?" then you may be solving OP's root problem but you will be making a useless landing page for anyone searching "How do I reformat a hard drive on linux?"

That is a good point and not easily solvable. I think the best approach is the OP updating the question title and text to reflect the actual problem they need a solution for, eg. <Ubuntu will not boot after doing XYZ.>

I don't think it is helpful to answer the literal question rather than the actual problem, since this is optimizing for a hypothetical future reader at the expense of the actual person having a problem. After all, the future reader might also have the same problem as the current user.

>since this is optimizing for a hypothetical future reader at the expense of the actual person having a problem

Which is fine because there are N potential future readers but only one OP.

I don't agree with this line of thinking. Helping the user at hand means you help at least one person, and probably others which might have the same problem. This is the purpose of the site! The OP is supposed to select one of the answers as "accepted", if the answer solved their problem.

You suggest answering "the wrong question" would help more users in the future. I don't see why that would be likely.

N could be less than 1

Again, you're assuming the question is "wrong". But how likely is it that every single person who asks that question is wrong? With your line of thinking you help the OP and anyone who gets in the exact same situation as the OP but no one who actually needs the answer to the question that was asked.

If you're worried about it then just answer exactly what was ask and follow your strategy. But please don't simply do your strategy because it's a real pain for those of us who end up having to move off the beaten path from time to time.

So, fix the question.

If the question is "why do I get a segfault?" and we find out he's trying to write C code to title-case a string in-place, and he's passed in a string literal, we can edit the question to "Why do I get a segfault trying to modify a string literal?" or similar.

If the objection is that answering the real question will confuse people, then make the question match the correct answer.

In such cases where the OP and the community agrees, reformatting the question would avoid making a useless landing page.

Or the best answer follows the "here's how to do what you asked, HOWEVER: <detailed description of actual problem and solutions>"

>In such cases where the OP and the community agrees, reformatting the question would avoid making a useless landing page.

And if the question is 10 years old the day I need to reformat my linux hard drive? The OP might not even still be alive. Certainly there will be resistance to rezzing a 10 year old thread to make the question more general.

Besides the XY problem, JFYI known also as the chocolate covered banana:

https://jdebp.eu/FGA/put-down-the-chocolate-covered-banana.h...

there is also the issue about the (missing) Standard Litany:

https://jdebp.eu/FGA/problem-report-standard-litany.html

particularly on a technical resource such as StackOverflow, lack of specifics are a problem (as they often don't allow for correct/effective answers), and in theory the OP asking should well know, being a technical person, the importance of providing background information when asking a question.