This is intended to be a canonical reference question that we can point people to. Maybe even a FAQ.
My question was closed for being a "shopping list question", even though it was absolutely on topic and programming related. Why?
Questions that ask for a list of things, like "is there a tool that does x on platform y?" or "what is the best abc for my problem?" are usually regarded not a good fit on Stack Overflow, even if they are perfectly programming related.
Jeff Atwood has written a blog post on the topic that is regarded something of a canonical document on the issue.
The main arguments against "shopping list questions" are:
Irritatingly, the terms "shopping list question" (or "shopping question") and "recommendation question" are often thrown around without regard to what they originally meant. They're different, but since there is some overlap and very little care paid to how they're used, I'll attempt to define both here:
These are the origin of the name, immortalized in Jeff's famous blog post and long the bane of Super User and similarly hardware-oriented sites. The basic template is this:
The requirements alone make this sort of question extremely unlikely to ever help anyone else (or even be answerable in a useful fashion), but at least in theory they could.
The price requirement combines with the volatility of the marketplace to make them completely worthless though. You might as well set a timer and automatically delete them after a week - indeed, this solution was proposed at one point, because folks really wanted to use Super User for help building their computers.
I hasten to note that these are real problems; everyone has to do some price-shopping now and then, and some of us do so very often - but Stack Exchange is generally ill-equipped to handle these questions. Product review sites, some trade journals, forums and of course dedicated shopping sites like New Egg are generally far better suited for this purpose, tedious though it may be.
As soon as the question no longer asks about pricing, the question is arguably no longer a "shopping" question, though it may still fall into the category of...
Product recommendation questions
These are the first steps of a reformed shopper. They're no longer asking you to do the shopping for them, but they do still want you to tell them what to shop for. The most problematic form looks like this:
This is clearly subjective beyond all reason, so it is quickly replaced with,
Now we're hitting several different problems: this list is impossible to keep updated, it attracts spam like spilled soda attracts yellowjackets, and, oh yeah, it's an X-Y problem.
See, the asker actually does have specific requirements for that Product, because he does have an actual problem that he's trying to solve. This tends to come out after the question has been closed as a duplicate of a different (usually incomplete) list of Products, none of which work for him. What he wants to ask is this:
If he'd actually written that, this would've been an answerable question; indeed, some sites allow these sorts of questions without too many objections. But on larger sites like Stack Overflow or Super User they tend to attract spam:
And because spammers are scandalous dastards and don't mind recommending their products in situations where they don't apply, there's absolutely no guarantee the products recommended will do anything to solve the specific problem described... And because strictly-speaking the question is still just asking for a list of Products of Type, getting rid of this spam is more work than it should be.
This brings us at last to,
How to ask for a product recommendation without actually asking for a product recommendation
At this point, we almost have a good question. The asker understands the problem, has described his situation and what he's tried so far to resolve it. We just need to get rid of that pesky technicality that allows for answers which don't actually do anything to provide a solution!
In other words,
That's it. If it turns out there's a Product that can be used to answer this, great! If not, well, maybe there's another option; perhaps someone owns the Bosch frobber manual and can tell you how to solve it without buying anything. Either way, now you're asking for a solution and not a shopping list.
Shopping questions ask
They do not always literally involve shopping: the comparisons may be between several free things, or between intangible things such as "Which job offer should I take," "what programming language should I learn," or "what religion should I adhere to?"
The key to a shopping question is that it asks others "please make a subjective decision for me and explain it" or "please list all my possibilities with their strengths and weaknesses". This is very different from non shopping questions:
Some of these questions might invite opinions, or might attract lists of localized answers, but they are not asking anyone to make a decision for you.
When you plan to ask a shopping question, what you should do instead is:
After gathering the answers to your individual questions, you can make your shopping decision. You will leave behind factual and useful information for other people, who may use it during the second step (as listed above) of their own investigations. This is a feature of the site. Someone with entirely different priorities than you can still benefit from your fact-gathering questions, while they probably could not have benefited from the general "tell me what to choose" kind of question that we prefer not to have in the Stack Exchange network.
Basically, Stack Overflow prefers questions where there are only a handful of answers that "converge" to a single, definitive, and presumably correct answer.
It's like preferring an infinite series that has a single, rather than "divergent" limit points.
Well, similar to what we consider off-topic on Arqade, questions like this tend to be very broad, and as you probably already inferred, Stack Exchange prefers that you ask questions that receive only one answer. On Arqade, mod-recommendation questions, similar to shopping recommendation questions here, are off-topic because you could have a variety of mods, or things to buy.
Basically, shopping list questions are bad because they are subjective, and subjective questions receive lots of answers and those answers can be outdated, leaving future readers with nothing, unless some nice person comes back and changes his answer.