For example, people who insist they can’t use a Laravel package because of “performance”, but it turns out they just don’t know how the composer autoloader works.
For example, people who insist they can’t use a Laravel package because of “performance”, but it turns out they just don’t know how the composer autoloader works.
You’re not there to babysit the question asker or convince them to change their approach/hair style/choice of library.
I know it’s frustrating to see people doing something wrong, or that you don’t agree with, but you know what you can do?
Just... don’t get involved if you can’t answer the actual question that was asked, and if it’s a bad question, let it die a natural death.
Asking the poster about X, and offering a solution Y' which will solve X should at least be attempted.
If the poster insists on Y, then he'll also have to accept the answer "sorry, you can't do it that way, for the following reasons".
No!
Goodness me, why is this so difficult?
It should not be attempted. That’s an arbitrary expression of your opinion on the poster.
If the question can’t be solved in the way it’s asked let it die gracefully with a “no you can’t do it that why” and suck up the down votes when someone comes along and proves yes you actually can.
I know it’s frustrating for you, but asking a question isn’t about you.
It’s a glib response to suggest that this is just done when Y is a terrible question for new users.
It’s also very common when Y is a very good just very difficult or obscure question.
I think it’s quite clear that a common sense approach isn’t working on this topic.
The solution really is, if you have nothing meaningful on topic to contribute, then don’t.
There really needs to be a way to make this behaviour on SO punitive somehow, giving people points for it results in the current situation.
Qs on a Q&A site become a sort of permanent record that other people stumble across, not just a wham bam thankya ma'am transaction that only the Q-asker sees. By revealing XY problems, a better service is provided for everyone who stumbles upon the Q.
> Goodness me, why is this so difficult?
Because not everyone agrees with you. This faction war has been going on at SE forever.
The fact that it is a permanent record that lives on is another argument in favor of the "just answer the damn question".
Context changes. Requirements change. Someone in the future might need the exact answer for some reason, but instead they get some useless back-and-forth and low-effort condescending answers that is super-specific to that asker.
Asking for more context, adding disclaimers before answering or linking to alternative solutions in the comments is fine, but it's a pain in the ass when the answers doesn't match the questions.
(in a pleasingly condescending manner too - I might add!)
Well, if StackOveflow/StackExchange is still following Jeff Atwood's philosophy, asking a question isn't necessarily about the questioner either. The question & the answer is for the community more than questioner.[0]
Understandably, most question askers see Stack Overflow as a "Siri/Alexa" type of resource to ask a question. E.g. If I ask Siri voice AI, "where's the nearest Starbucks?", she doesn't talk back about any X/Y problem such as "Is your actual problem that you're not getting enough sleep and therefore you're really asking how to cure insomnia instead of a caffeine fix?" No, Siri just responds with the address of the closest Starbucks. Why can't Stack Overflow be just like that?!?
The above "Siri" type perspective is a huge misunderstanding because the messaging from founders Atwood/Spolsky about Stack Overflow's editorial purpose is very nuanced and difficult to grasp. It's been 11 years since 2008 and that "wiki" intention is still drowned out by the frustrated by users who simply want any of their questions answered: they don't care if it's a duplicate; they don't want pushback on X/Y; they don't want their question downvoted/closed/deleted.
In contrast, the moderators (a.k.a. the high rep fellow users) of Stack Overflow are definitely not in the mode of mimicking Siri/Alexa. They're humans and they definitely will "talk back" to you and ask, "what exactly are you trying to accomplish?" Heck, the famous blog by Microsoft's Raymond Chen (The Old New Thing) is basically a collection of essays about various "X/Y Problem" submitted by customers.
(To downvoters... I don't mind the downvotes but please help with quality of this discussion: If there's a public statement from Stack Overflow explaining its true intended purpose that contradicts my cite, please reply with a reference to it for the benefit of readers of this thread.)
[0] https://twitter.com/codinghorror/status/991082088689381376?r...
Part of the confusion might be that they're very unclear about this point. For example, on the front page right now the following is prominently displayed:
> Stack Overflow is an open community for anyone that codes. We help you get answers to your toughest coding questions, share knowledge with your coworkers in private, and find your next dream job.
Emphasis mine. Clearly that is something very different from building a "Q&A wiki" which you allude to.
I guess the impedance mismatch comes from the fact that the route they chose to get to their "Q&A wiki" goal was to curate questions from individuals, rather than to for example extract questions and answers from a more regular help forum.
So individuals go on SO and think the site is about helping them, and then get confused about what happens next.
That text blurb on the landing page is relatively new. It may not accurately reflect Stack Overflow's long-standing strict editorial focus. The new SO landing page appeared less than 4 months ago around June 27, 2019.[1][2]
In contrast, the following "wikipedia" intention is from the SO launch 11 years ago back in September 15, 2008: "Stack Overflow is a _collaboratively edited_ question and answer site for programmers"[0]
So from September 2008 to June of 2019, it has been ~11 years of endless confusion from users because Atwood/Spolsky's intended editorial purpose of Stack Overflow has been poorly explained -- and I would also contend that it's non-intuitive for most users and hard to understand. E.g. The following is too nuanced to explain to drive-by casual SO users: I'm not just asking _my_ particular question to get _my_ particular answer but actually seeding _a_ question that's also also a _helpful_ contribution to the _community_ to build a repository quality answers to questions.
>I guess the impedance mismatch [...] So individuals go on SO and think the site is about helping them, and then get confused about what happens next.
Yes, I totally agree why the confusion happens and why the same complaints about SO have been repeated for over a decade. It's because SO's editorial purpose is basically invisible and only manifested in the powers given to moderators[3] to downvote/close and for the tradition of fellow users pushing back with X/Y dissection instead of simply answering the question.
Does the June 2019 landing page mean that SO has changed and they want to be more of "Siri/Alexa" type of resource? I'm not an employee and I don't know.
[0] 2008-09-15 launch: http://web.archive.org/web/20080915103343/http://stackoverfl...
[1] 2019-06-26 old: http://web.archive.org/web/20190626143412/https://stackoverf...
[2] 2019-06-27 new: http://web.archive.org/web/20190627173410/https://stackoverf...
[3] footnote about "moderator" powers : a Stack Overflow user only needs 15 points to flag a post as "duplicate". And voting to "close" only requires 250 points.
Those thresholds are so low that SO is basically asking non-hardcore users to also exercise moderation powers. In other words, the "moderators" are not an elite cabal; they're your fellow users voting to flag questions as "duplicate". Why are my peers flagging questions as duplicate?!? I don't know. As the old saying goes, "maybe we've met the enemy and the enemy is us."
List of reputation scores required for various "moderation" privileges:
Maybe a meta-moderation system like Slashdot had could have helped. In the end though I think their implementation was ultimately flawed. They created a great platform for asking questions, but that wasn't what they wanted to create.
This is... weird, IMO.
I'd much prefer as a new user "I think I know what you're trying to do, your way is gonna cause you a bunch of pain, there's a better way, and here's why" to zero answers and a dead question.
IMO it ok to suggest alternatives in the comments though. Alternatively, you can open a new question, answer it yourself and link to it on the old answer... I think it's allowed, but who knows.
(My favorite is the one where they were actually asking about PHP)
These XY answers should contain a mention of Y, if relevant, skip the scolding, and answer the question.
If you have the answer but would rather the person not do it, just put a disclaimer on top of your answer.
If the question/answer combo is way too specific that there's no chance someone is going to to benefit from it the future, maybe it should die, like other posters said.
A common one I come across is people trying to track who's online/offline with window.onbeforeunload.
The answer is always "that's not reliable, you can't really use it for this".
A good answer mentions the alternatives - storing the user's last activity and considering them logged out after X minutes, using websockets for a presence channel, etc.
I see no reason to avoid the "you can accomplish your underlying goal in a better way" answers.
Only if the question is "Is window.onbeforeunload reliable to track online/offline users?"
In every other case, that should be a disclaimer on top of an answer to the actual question.
Maybe future users don't need 100% reliability for some reason. Maybe they're just trying to find out if something like onbeforeunload even exists.
Sure, showing better ways is fine. As long as there is an actual answer somewhere (preferably with the disclaimer), instead of cute but condescending non-answers like [1].
We're gonna have to disagree on this.
That's like me asking "how do I get to this restaurant", and you give me directions to the place that burned down a year ago without mentioning that. Useless, and infuriating when I drive a half hour to discover it.
Consider that the asker might just using the restaurant as a reference to some other place. Or someone "hearing" the answer in the future wanted to know the address to visit the ruins. The information might still be useful. Consider that you might not always know better.
If this were a chatroom or forum, fine, answer informally. But we're talking in the context of a Q&A webiste.
Like it or not, regexes are able to parse a limited subset of HTML.
By explaining why they only can parse this small subset is a great teaching opportunity on Chomsky Hierarchies. And the people searching for it might learn that XML parsers exist.
By actually giving an answer to the question (after saying the above of course) you might be helping thousands of people parse very simple HTML when they're in a hurry.
By saying [1] you're just adding low-effort content on the internet that doesn't teach anyone anything, but make you look cool to your peers.
By explaining to them Chomsky Hierarchies they can understand limitations of regexes and learn about parsers and.
By showing them the regex able to parse a limited HTML subset they might be able to try it out and see such limitations by themselves on their own screen. Additionally they might be able to learn some new regex tricks.
Maybe you learned things in a different way, but lots of people enjoy learning stuff by doing and by seeing demonstrations.
Besides, I concede that "helping thousands of people parse very simple HTML when they're in a hurry" has its merit, but IMHO that's also how you end up debugging a production bug at 3am while losing faith in your fellow developers and humanity, so I'm not sure if it's a net plus. YMMV.
And yet it is not only wrong, but the answers below do a much better job at explaining Chomsky Hierarchies and other things correctly.
Why is it wrong? "Have you tried using an XML parser instead?" is wrong because HTML is not necessarily XML/XHTML. The first working draft of HTML5 was published a year before that answer, and non-XML websites existed since the 90s, so there's no excuses.
-
> but IMHO that's also how you end up debugging a production bug at 3am while losing faith in your fellow developers and humanity, so I'm not sure if it's a net plus
And that's why you treat people like adults: you tell them the limitations of each method, instead of making a meme.
And btw, you can get bugs at 3am with a XML (or HTML) parser too.
I often come across these questions in Google searches months/years after they were closed, and I'm pretty darn sure I legitimately need to do Y. (If I'm wrong, it's for a very different reason than the OP.)
I saw someone post eleven different questions with almost the same code in a 48 hour period the other day - each time about a tiny specific question but you could tell they were trying to do something (online/offline user detection) via a method that wasn't suited for it.