I asked a question on Stack Overflow yesterday and it got closed due to being subjective. I'm slightly confused as I used the subjective and discussion tags (what are these for if not my type of question) and I've also seen other subjective questions on SO that have not been closed.

Just want some clarification for the future.

4 Answers 4


The reason such questions are (sometimes) closed is stated on every /ask page:

We prefer questions that can be answered, not just discussed

Is your question a question which can be definitively answered? Or is it a "list of X" type question with no real answer?

That said, these questions are occasionally OK if

  • they are marked community wiki
  • the community responds well to them

Also, at least you asked! That counts in your favor; most don't even ask, just do whatever they like..

I converted it to wiki and I'll let others vote it open as they deem fit.

  • Many thanks. At least I now know.
    – user138366
    Nov 4, 2009 at 12:24
  • The quick assessment to move a subjective post to wiki is definitely in order. Best language C++ vs C# for gaming console will not have the definitive answer that a specific program related question might.
    – IAbstract
    Feb 4, 2010 at 22:11
  • @dboarman: Yes, but the asker of such a question has a real need - which language to use. While there may not be a definititve answer, multiple good answers from different points of view can give the asker enough info to make a better decision than they would have otherwise.
    – kyoryu
    Mar 7, 2010 at 0:44
  • @kyoryu: Absolutely true, but my point being that the question should be CW from the beginning. Anyone who has a defined need should be able to get their answers.
    – IAbstract
    Mar 8, 2010 at 13:08
  • I think we should be allowed to ask subjective questions but being subjective, such questions should not add reputation to the OP and none of the answers should be allowed to accepted as the answer, but people who answer such questions should be allowed to be up-voted. I mean some questions are really subjective! Feb 15, 2011 at 12:31

A quick check of your question shows it wasn't in the same category as "Which is better: emacs or vi?", but we prefer questions that can be answered. The "subjective" tag doesn't help, because it doesn't change whether or not the question belongs. It's kinda like asking "Mind if I smoke?" in an asthma ward.

There are a fair number of questions like this, and some of them are valuable. "What's a good book to learn X?" questions are an example: they're a good place to find what books are generally considered worth getting, although we're rarely going to settle on one best book.

One thing to remember is that votes to close are done by people with 3K reputation and up, and such people are usually fairly aware of the rep system. There's prejudices against questions and answers that seem designed to get cheap reputation, and subjective questions like yours tend to breed both.

Community Wiki questions and answers don't affect reputation, and so we can do all the voting we want on them without worrying about cheap rep. This leads to the poll sort of question, where people throw on answers and other people vote according to how they like them. One example of this would be a good books question. You can assume that a book near the top of the list has impressed a lot of people, and is likely good. (Books at the bottom might not be good, or they might be obscure, or they might be idiosyncratic.)


Do not ask them! The existing ones are the exceptions and shouldn't be the rule.

If you really have to ask them, be sure they are Community Wiki from the beginning. But that does not guarantee that they will not get closed.


I'm apologize in advance for necroing this with a response.

If we limit ourselves to simple, objective questions that can have a definitive answer, we will limit our range of topics on important topics to programmers. Much of what makes a good programmer good is not his/her technical mastery of a given language or API, but rather his/her judgement and skills in organizing code.

These types of skills/judgements are, by definition, subjective. A question like "How should I design XYZ type of program" is subjective, by definition. However, questions like this are more often than not more informative than "how do I use printf to format something like so?" Even if the question is subjective, and is not provably correct, some answers will be better, and show more insight than others. Some people will consistently give answers that demonstrate more insight.

These are exactly the kinds of people that I want to see with high reputations. If I want a description of an API, I'll get a book, read the documentation, or just fire up a compiler.

And, even if there is discussion back-and-forth between two viewpoints (both of which may be legitimate), reading that discourse can only help educate others on the appraoches suggested, the models used, and the advantages and disadvantages of each. Which would you rather have access to, Knuth and Djikstra giving answers to questions that could be resolved by reading a spec, or them debating opposite points of view on program design? Which would be more valuable, more informative?

Yes, some questions may become argumentative. "What's better, C# or C++?" But even in this flamebait question there's room for illumination - a good answer would point out that both languages serve different purposes, suggest where they may be more or less-well suited (and why), and give the asker an idea of the strengths and weaknesses of each. My experiences have been that an answer like that would quickly be upvoted, and weaker answers ("C++ because it's lower level and good programmers use low-level languages") would either be downvoted or just ignored.

Additionally, even "cut and dried," apparently objective answers often have a significant subjective component to them. A simple question of "how do I do X with Y" might trigger someone with experience to point out that the question is itself a design smell, and points to an underlying problem that can be approached from a different angle. This type of answer, IMHO, is better than the mechanical description of how to do the actual task asked. Part of being a good developer is digging for the real requirements, and answering a question on SO is much the same. So, the line between "subjective" and "objective" is a mighty thin one anyway.

Yes, there are other questions "What's your favorite programmer comic" that are just chat questions. Fine, community-wiki those. Sometimes joke answers are made - fine, community-wiki those, too.

But all 'subjective' questions do not fit that category. And they are, in many cases the more important questions to be asked and answered. It is that higher level thought that I'd really want to see more of. And I'd like to see the people capable of providing it rewarded and recognized.

If I really need to know about operator precedence in C++, I'll read the spec.

You must log in to answer this question.