# How to ask “(a) or (b), not (c)” questions?

Is there a polite way to ask a question giving 2 alternatives (a) and (b) as possible answers, and avoid those funny guys who insist in answer with a new non-given alternative (c)?

(a) Yes, there is. (Please elaborate)
(b) No, there is not. (Please elaborate)

-
Are we speaking in hypotheticals here, or is there an actual question you want to ask, but you don't know how to formulate it? –  Bart Dec 2 '11 at 14:36
a or b questions give off a very strong 'too localized' feeling. –  Aberrant Dec 2 '11 at 14:37
Not what you're asking: but why wouldn't you want to learn about alternatives? It might save you your fingers! "Should I ignite fireworks with (a) a match or (b) a gas lighter?" –  Arjan Dec 2 '11 at 14:45
@Bart Just hypothetical. This rouse in my mind some weeks ago, but I can't recall the question I was about to ask and gave up because of this. –  Dr Beco Dec 2 '11 at 14:45
Why the downvote, please? Thanks. I think this question is clarifying good things to the community, even if not the way I, or you, want. –  Dr Beco Dec 2 '11 at 14:46
Downvotes on meta mean "I disagree". –  Oded Dec 2 '11 at 14:50
Yes, I know. What I don't know is "you disagree with what?" With A, B or C? Does it even make sense? –  Dr Beco Dec 2 '11 at 14:51
I don't think it does, no –  juanformoso Dec 2 '11 at 15:01
If you know your possible answers, isn't it a poll and not a question? –  Marcelo Dec 2 '11 at 17:16

Be careful that you are not falling victim to the XY Problem.

If you need help choosing between (usually) two options, but you are unable (or unwilling) to consider other solutions, it might be because you are approaching the problem from the wrong angle.

One of my own questions actually qualifies as a good example here:

Trying to add a duplicate to a set - what kind of exception to throw?

I initially titled it "Trying to add a duplicate to a set - UnexpectedValueException or OverflowException?", but I reconsidered before posting because I wanted to be open to the possibility that there was a third exception type that would be a better fit...

... and in the end, the solution was not to throw an exception at all.

-

My experience has been if you're avoiding option C, it's because you're focusing too much on option A or option B, and not on objective O.

I'm not saying go with the crowd just for the sake of it, but obviously you're having trouble and are reaching out to people of more experience, so why not listen to that experience? Chances are someone has been down this road before, and have decided that A and B seem like the better alternatives right now, but when you run into problem P and roadblock R, option C sounds pretty nice.

Of course you can always counter this by saying Mandate M and Manager PHB have decreed option C to be null and void (even in languages where those keywords don't exist), and there's no way for the answerer to know you're bluffing. This is deceitful and most certainly not in the spirit of StackOverflow.

Bottom line is If you're avoiding options for no reason, you're only hurting yourself as a problem solver, and missing an opportunity to learn.

-

If you know the answer is going to be either (a) or (b) but not (c), then perhaps you should not be asking the question in the first place. Instead your question should goes something like:

What is the comparative advantage of solution (a) versus (b)?

Stackoverflow is not about opinions but solutions. You should choose the option yourself based on the pros and cons provided.

-

Yes, there is a way: Address C preemptively in the question yourself, and explain why it won't work for you.

If C is such an obvious choice, as a community, Stack Overflow wants and needs that C answer there in the question, with votes, because Stack Overflow is as much as about leaving good artifacts for future searchers as it is about solving your immediate problem. If there is an obvious C answer, the question needs to address it somewhere, whether it be in the question text or in an answer.

Additionally, as the question asker you are admitting that you need a little help with the topic. It's perfectly reasonable for experts in the topic to want to make sure that you're not overlooking some obvious C answer that would greatly simplify your question. If you haven't already called out why C won't work for you, experts who ignore it wouldn't be doing a very good job answering the question.

-
But then there might be someone with an option D? –  Arjan Dec 2 '11 at 14:41
Leaving alternatives to googlers is really good. Thanks. +1. –  Dr Beco Dec 2 '11 at 14:42
I find this is generally the best way to go about it. For example, when I worked with SharePoint, I didn't have access to MOSS, so I would always include the notice of "I can't use MOSS" when I assumed there might've been an option using MOSS. –  Grace Note Dec 2 '11 at 14:42
@arjan Yes, that should be stopped. When I say "C", its just simplifying the case where there may be a "lot" of other possibilities and the questioner wants his attention only to "A" and "B"! –  Dr Beco Dec 2 '11 at 14:43
This is the extremely obvious and common-sense approach. If you don't want C, tell us why you don't want it. –  meagar Dec 2 '11 at 14:45
But then @Grace, you were not limiting to (a) and (b), but just stating why (c) was not an option. Indeed, nothing wrong with that. It's the "(a) or (b)" that bothers me. I don't think there's a good way to ask for that. –  Arjan Dec 2 '11 at 14:47
@meagar I can't be possibly thinking of all of other ways to answer a question. It's not A, B, or the non-wanted C. Because there can be a non-wanted D, and E, and so on... –  Dr Beco Dec 2 '11 at 14:49
@Arjan "C" doesn't have to be a concrete option of its own. "C" just needs to be "Options that can't work". It basically ties into explaining why A and B are the only options in the first place - C could just be everything that isn't A and B, depending on how it is explained. –  Grace Note Dec 2 '11 at 14:57
@DrBeco You're not asking the right questions in general, let alone for Stack Overflow. If you're seriously asking "A or B", ignoring the possibility that both are wrong and that options D, E and F are better, then it doesn't matter which you pick, and it doesn't really matter what we answer - your mind is made up to use the wrong solution. –  meagar Dec 2 '11 at 15:07
Yes, @Grace, I agree, but I feel that's not what Dr Beco is after. The comment above yours seems to indicate (s)he really wants to limit to (a) or (b). I'd think the answer to that is: no, there's no way to ask for that on these sites. Smells like a poll to me. –  Arjan Dec 2 '11 at 15:09

StackOverflow is not about a poll of two options - it is about giving a good answer to a question.

By limiting people to what you think the right answers may be, you could be losing a much better option.

In general, if there are additional constraints, you should specify them in the question (and if they seem unreasonable, elaborate on them).

So, if you can explain why only a and b are options, then you have politely explained why these are the only options (though, you might be wrong...).

-
Nice comment. Sometimes I fell people is not loyal when answer "why"? An example: my teacher asked me to... If there is no reasonable constraints, it sounds like an (not true) excuse, to limit the answer. Also, if there is a complex "why", it will probably suggest even more alternatives as temptations, than the 2 given. –  Dr Beco Dec 2 '11 at 14:40

(a) Yes, there is.

Ask a clear question that was well-researched, wherein your `A` and `B` choices are actually good ones, to begin with.

By no means should you ever think that merely stating "Please only answer A or B" will work. It will often have the exact opposite effect.

-
Should it be "good"? What if the criterion is not being "good" or "bad", but another issue at hand? –  Dr Beco Dec 2 '11 at 14:35