Hacker News new | past | comments | ask | show | jobs | submit login

> This reminds me of the “XY Problem” framing [0], a concept that has been very helpful over the years when communicating with customers about feature requests.

It also ruined stackoverflow, since replies which ignore the question and assume that the OP really meant something else end up being so much easier to write/vote on than an actual answer.




Many, many things are wrong with stackoverflow. Insisting that every discussion be factual and opinion-free pushes you deep into the McNamara fallacy of believing that things that cannot easily be quantified don't matter.

It's a site I sometimes use but dislike intensely.


I think the absolute hardest thing to get information on is "I have XYZ problem, I am aware of solutions A, B, and C. What is the best solution among these, what are the trade-offs between them, and what solutions am I not aware of?". Now, this is just a truly difficult question, but Stack Overflow solves that problem by forbidding such questions, which is understandable, but I think also a shame. At one point in time, I thought maybe Quora would try to fill this gap, but they went off in some other direction that I never understood. Most other "social" things (reddit, etc.) are discussion rather than Q&A. Or they are blog posts, where the focus is usually on solution A, with solutions B and C presented only for contrast, because solution A is what motivated the author to write the post.

I kind of want Wirecutter, but for technologies.


Yes, that would actually be much more useful to me than what stackoverflow is. A vast number of the questions found that can be easily answered by RTFM and/or doing some direct experimentation. The harder ones would be more useful.


Yeah. I think it's also why chatgpt (and copilot, etc.) actually did turn out to be a strong SO competitor, because it actually can do a pretty good job on these factual questions.

But unfortunately it's pretty bad at this other kind of judgment-based compare-and-contrast question. It's especially bad at the "what other solutions am I not aware of?" part, because it isn't kept up to date.


Isn't Bard kept up to date?


Good point, maybe I should try using that more.


You seem to be trying to replace a basic peer-review of an engineering design that typically involves a paid team with advice from poorly-known, pseudonymous strangers with reputation crowd-sourced from a web site's user-rating system.

Frankly, I think that's asking a bit much. If you want a high-quality peer review of design proposals to bounce ideas off of others and discuss tradeoffs, you need a team. Maybe something like a meetup group or mailing list for a specific technology, programming language, or industry sector. But it goes beyond one-off Q&A, and I can also understand why Stack Overflow, with a goal of becoming a repository of perpetually useful knowledge that is general enough to be useful for anyone into the indefinite future, does not want to host such project-specific discussions.

Why not just develop in the open and collaborate explicitly with other parties also working on the same project? What you're asking for sounds close to something like the various special interest groups and public discussion of improvement proposals you see in things like the Python programming language or Kubernetes, or discussion on LWN about specific challenges the Linux kernel team faces.


I don't think that's asking a bit much.

If it were, then there'd be no reason to prohibit such questions... people wouldn't ask them, because they would never be answered. The only reason to prohibit them is because they would get attention/answers where none was desired.

The trouble with StackOverflow, is that what the users want and need does not match what the owners want. The owners want something monetizable, something that can look elegant and beautiful (hence the PR release a couple of years ago where they were positioning it as some "encyclopedia of computer science" or whatever). They figured out that the users could be denied what they want, while still (slowly) creating what the owners themselves wanted.

> and I can also understand why Stack Overflow, with a goal of becoming a repository of perpetually useful knowledge that is general enough to be useful for anyone into the indefinite future, does not want to host such project-specific discussions.

I'm not sure I'd characterize them as wanting that, but if they did... how would that be at all useful to anyone except CS undergrads trying to get someone to do their homework for them? Literally nothing of what people ask there day to day will be generally useful into the indefinite future. What do you want to ask, that will be useful 40 years from now? Neither anything language specific, nor anything domain specific will be relevant to anyone not a historian. Even the cutting edge stuff today will have long since been wrapped up into some blackbox library that everyone will use without unerstanding it.

If you were correct, SO could never be anything more than some useless little dumpster where the same 5 people whine n about the quickest sort algorithm.


All true, to which I'd add:

It's like giving a big sales force a financial incentive: you have to be careful because they'll just game it, relentlessly, all day long. They won't care about your corporate priorities -- just getting that incentive money.

On SO, people get "reputation points." Those "same 5 people" game that system like salespeople winning that prize. You answered a question? They don't want you as a competitor, so they downvote you. You don't like their answer? Too bad, you don't have enough reputation points to downvote them.

To pick another analogy: they're like high school cheerleaders voting on who can become one of them.


> You seem to be trying to replace a basic peer-review of an engineering design that typically involves a paid team with advice from poorly-known, pseudonymous strangers with reputation crowd-sourced from a web site's user-rating system.

Yes that's a correct interpretation! In fact, I almost wrote something like "even though this is forbidden on SO, it's one of the most common kinds of conversations within and across teams in the workplace in my experience".

I also agree with pretty much everything else you said about how these discussions do happen in project-specific ways on mailing lists and such.

But I disagree that a generic version of this couldn't exist. (Maybe it can't anymore though, because everyone will try to do it solely with AI now because that's what's hot.) I think before the existence of Stack Overflow, you could have said all these same things about the kind of questions that appeared there. Prior to having a good place for getting factual answers from "poorly-known, pseudonymous strangers", it was necessary to get those answers from professors or or teammates or consultants or independent research, just like it still is for these more subjective questions.

I definitely agree that this is a more difficult genre than factual Q&A, and I don't begrudge SO their choice in what content to focus on, but I think it was a choice to go that route, not an inevitability.


This is the most techie social media site I use, and I see constant complaints about the other techie social media site, StackOverflow. Why doesn’t someone test the theory and come up with some competition?

I think this is normally an unreasonable ask (when we’re complaining about, like, cars, clearly that’s not in this site’s aggregate wheelhouse). But I mean this is a website about start-ups, full of techie web-devs complaining about a website that they all use.


I think it’s because Stack Overflow is so close. It does 80% of what you need with a bunch of major warts.

But nobody wants to duplicate the 80% just to solve the warts.


> Why doesn’t someone test the theory and come up with some competition?

ChatGPT Has entered the chat.


I don't see that as a bad thing. Stack Overflow only wants to focus on questions that have a verifiable answer. Other types of questions still matter, they just don't matter on Stack Overflow.


Like anything, it needs to be applied appropriately, and I agree that blindly redirecting every request to this framing is not helpful.

But the number of times that it is helpful has been pretty high for me over the years. This probably depends a lot on the customer’s own ability to comprehend the true nature of the problem. I worked in the enterprise/B2B space, where a significant number of requests came from people not technical enough to fully know what to ask without some deeper exploration.


Agreed. But sometimes, especially if you know about your problem domain, it feels like asking "how do a I keep water out of my basement" and all the answers are "simply rebuild your house at the top of the hill."


It's a matter of vastly different costs, in that case: the solution to the modified problem costs much more to solve than the originally stated problem. The trick is avoiding such a large gap, hopefully with a breakeven that comes in the foreseeable future, if not immediately.

For example: how do I repair water damage on my ceiling in a way that's quick enough to do it after every storm? You mean how do I repair my roof so I only have to repair the ceiling one more time? It's more upfront cost to do both now, but the breakeven is only a small handful of storms away, which is palatable enough to get serious consideration. If the breakeven was (for some reason, hypothetically) 20 years away, actually figuring out how to make quick work of repeated ceiling repairs might be more desirable.


Also when, for example, someone suggests a strategy that is useful in scenario X, but because it can be problematic in scenario Y, they get a bunch of replies warning them about that - even though they had no intention of advocating applying it in scenario Y. That’s also a kind of XYing - “oh don’t do that, it’s bad if you re trying to Y…” when we’re not, we are trying to X.

For example, when someone says they think the XY problem model is a useful framing when evaluating customer feature requests in product design, they are talking about using it in scenario X.

But inevitably they will attract a bunch of replies telling them how bad it is to apply the XY problem approach when answering questions in a technical Q&A forum. That would be scenario Y.


"You keep mentioning XY problem, but you really meant the AB problem, and that answer is ......"

That's it in a nutshell. And concur with this de-framing non-answer as one of the leading causes of bad StackOverflow solutions.


Stack overflow started out with a lot of Microsoft ecosystem people, eg. Joel Spolsky. I worked at Microsoft in 2008 and this kind of de-framing was a bit of a corporate cultural obsession there at that time. You'd report a bug internally and PMs would ask you what you were really trying to do ... It was frustrating when you wanted people to just fix their shit. Instead people would universally treat you like you didn't know what you were doing and really meant to ask something else. I saw this trait a lot on SO around the same time.


Apparently I was too subtle so let me put a lampshade on it.

The replies to the post which said that the XY problem approach is useful in product development, which are talking about XY reframing being a problem on stackoverflow are XY reframing the parent post.

They are doing exactly what they decry.

The smell of irony is apparently not as thick in the air as I thought it was.


For what it’s worth, I saw what you did there and appreciated/enjoyed it.


Even if you know that the strategy is problematic in scenario Y, other viewers of the reply may not; you are only one of the many potential consumers of the response. Isn't it useful to flag the potential gotchas of a given approach for a naive reader?

I feel like many of the complaints Stack Overflow users come down to this: in many users' minds, the site is a Q&A forum, while the SO team wants it to be an authoritative repository of technical knowledge.


Most people ask how to make some absurd hack when there is an easy and proper way to solve their problem.


Sometimes what you think is an absurd hack is still what I want to do after having thoroughly considered all other options. It's infuriating in those cases to end up on a Stack Overflow question where someone wanted to do exactly what I want to do, and the only answers are redirecting them to other solutions that I've already considered and ruled out.


The huge majority of people asking questions on SO are noobs and most likely haven't thoroughly considered all other options.

If they did, they should say so in the question.

The majority of people answering questions are also noobs, and this should be taken into account. Experts in their domain don't need SO, and so don't go there at all.

When I was writing my thesis, years ago, SO was already basically useless to me because nobody could solve any of the problems that I was encountering then.

I just use it when I can't be bothered to look up stuff in the documentation, but I see it mostly as a resource for people who are learning or are very early in their career.


This feels like you're saying "SO is and should remain useless". SO is populated mostly by inexperienced developers because the community is hostile towards experienced developers, and part of that hostility is this XY-ing. I also don't find SO to be useful, but I wish it were.

> If they did, they should say so in the question.

You're operating on the assumption that the purpose of SO is for an asker to get an answer. The extremely strict duplicates policy suggests the opposite: the goals and motives of the original asker are essentially irrelevant, because only one similarly-phrased question is allowed ever. If their question doesn't get answered this time, it will never be allowed an answer.


It is very useful for noobs.

Once you become an expert you spend much less time on SO because you just don't need it. So what are the chances that when you do need it, another expert in that specific thing (of which there are maybe 20 in the world) will also at the same time need to use SO, and stumble upon your question?

It's like using tinder in a sparsely populated area.




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: