12

How do I ask questions on Stack Overflow when the premise of the question requires a lot of background? This question is a good example.

I've read the guidelines on how to ask a question several times, but with this question it is hard to see how to make it relevant to the wider internet community.

I know I'm not very good at asking questions, but I am trying. All every asker ever wants is a good answer.

How do I pare a question down to its essentials and still not lose context, and keep it relevant for all programmers, and not just me?

Would a better place for my questions be in a Stack Overflow Chatroom? Or another Stack Exchange site?

15
  • 5
    Protip: Stay away from Walls of Text. If your question can't be asked succinctly, then perhaps it's not well defined enough to ask on Stack Overflow?
    – George Stocker Mod
    Commented Aug 22, 2012 at 11:35
  • 2
    @GeorgeStocker It's a bit broad for Stack Overflow, but it seems like a very good fit for Programmers.
    – yannis
    Commented Aug 22, 2012 at 11:44
  • @George Stocker Well, then we came to the same conclusion. That doesn't solve my problem though. The reason I still post the questions, and form them to the best of my abilities, is because in that situation, SO is the only place I know where I even have a chance of getting answered that question. I know that isn't constructive and optimal for anyone but me, but choosing no option can't be the better choice. Are you saying I have no alternative?
    – Aske B.
    Commented Aug 22, 2012 at 11:47
  • 3
    I can tell from your choice of sentence structure that you love words. You love using them, you love putting them together to form sentences. These are all good things. What would improve your language is learning how to say things more succicintly. Or, as Picard once told Data, "Don't Babble."
    – George Stocker Mod
    Commented Aug 22, 2012 at 12:04
  • another related question: Where in the (Stack Exchange) world can I initiate a programming-related discussion?
    – gnat
    Commented Aug 22, 2012 at 12:04
  • @YannisRizos Thanks for confirming, I sent it your way.
    – George Stocker Mod
    Commented Aug 22, 2012 at 12:05
  • Even this question does not at all require this many words. I don't mean this in a rude way, but stop telling stories, start asking questions.
    – Bart
    Commented Aug 22, 2012 at 12:05
  • 2
    @Bart Best thing here is to edit it, and then point OP to your edits (if you have the time). Sometimes it's a lot better to show than tell.
    – yannis
    Commented Aug 22, 2012 at 12:06
  • @GeorgeStocker Thanks! The other one would be ok for Programmers as well, but since OP already accepted an answer I wouldn't bother.
    – yannis
    Commented Aug 22, 2012 at 12:08
  • @YannisRizos Fair enough, if I have a spare couple of minutes later on I will do so. (As you might well know I often do)
    – Bart
    Commented Aug 22, 2012 at 12:09
  • @Bart I know, that's why I suggested it. And since the question now lives on Programmers, there's a sweet 2 rep award waiting for you ;P
    – yannis
    Commented Aug 22, 2012 at 12:10
  • Maybe I should articulate differently: The alternative I see, is to ask my issue in a brief matter, to get people's attention (because they don't like WoT [Walls of Text]); then get them to tell me to provide more detail and context; Then edit my post so it and becomes a WoT, except some people already read some of it, so it becomes more acceptable for them. I'm well aware that WoT are a pain to read and much information there is unnecessary to most, but sometimes I see no alternative. I know I'm a terrible sinner at this particularly, but asking complex questions is like rocket science to me.
    – Aske B.
    Commented Aug 22, 2012 at 12:11
  • @AskeB. I just edited your meta question as an example of what could be taken out of the question and still have it keep its same meaning. Feel free to roll back (this was done as an example), but I would say to apply that same idea to your longer posts.
    – George Stocker Mod
    Commented Aug 22, 2012 at 12:17
  • Thanks a lot for all your comments. @GeorgeStocker, you're spot on, and what you're saying makes perfect sense. I just don't know how to do it. And that's my problem. Maybe it will take a lifetime to learn, maybe I never will, but I figure it's better giving it a try. Can you give me an example of how I could articulate myself more briefly?
    – Aske B.
    Commented Aug 22, 2012 at 12:18
  • @GeorgeStocker Thanks for you edit of my original post. I must admit it makes me think a lot. I'm aware that my perspective is blinding me. What I've generally just done is to explain every relevant thought I've had on the issues. Maybe it's because I desperately desire understanding of my situation. I know that this question, as it stands after you edit, will not be likely to give me an answer that will cure my frustrations. But on the other hand, my version isn't much better at that either, since it seems people mostly address what I do wrong, instead of suggesting how I could do it right.
    – Aske B.
    Commented Aug 22, 2012 at 12:36

3 Answers 3

4

I think the main problem with the question is that you posted it at the wrong site, it's a bit more suitable for Programmers than Stack Overflow. Stack Overflow by nature favours succinct and extremely well defined questions whereas on Programmers, a site concentrated on software architecture, analysis & design and every other aspect of the SDLC (minus implementation), we don't mind questions that are a bit open ended and subjective - just not too much, questions have to be questions and not discussions.

George already migrated the question to Programmers.

I know I'm not very good at asking questions. I don't mind the fact that I'm ignorant on some subjects, and that some people will just tell me I'm doing things the wrong way.

Although the first comment there is a bit umph (already flagged), the second one doesn't really tell you that you are doing things the wrong way, just that there is a more suitable site for architectural questions that are a bit to the open ended side. And I'll agree with the commenter, this question is also a better fit for Programmers than it is for Stack Overflow.

However since you already accepted an answer on this one, I don't think there's any point in asking a moderator to migrate it.


I edited out some of the Meta commentary in your first question, just to make it a bit smaller and easier to read. Check the revision history to review my edits, I only took out what I thought had absolutely nothing to do with the core question. George edited your Meta question in the same spirit, learn from his edits as well.

You do seem to love words, perhaps a bit too much, so I'll reiterate George's and Picard's advice:

Don't Babble

Oh, and welcome to Programmers! Please read our FAQ thoroughly, it's also a painfully long wall of text, I think you'll love it ;)

2
  • Thanks, I didn't know of the Programmers subsection. About the second comment, while I agree it gave me advice, it didn't attempt to explain why it was a good thing to do. He could just as well be blinded by wrong facts. Sometimes no advice is better than wrong advice. I could have commented better om that though. While this was all helpful (I upvoted), and I'm honored you put that much effort into it, it isn't the answer I'm looking for. I'm trying to get general advice on what the essentials are to ask broad questions, in a brief way.
    – Aske B.
    Commented Aug 22, 2012 at 12:51
  • 2
    @AskeB. Sometimes no advice is better than wrong advice. No argument there. As for your your actual question, I'm a programmer not a writer, I'm not sure I can help much. As a start, try to keep personal commentary and backstory out of your posts, we care about what the problem actually is and not so much about what you feel / think about it or how you stumbled upon it.
    – yannis
    Commented Aug 22, 2012 at 13:00
2

my question is basically, do anyone have some tips for when you have a huge problem that you just don't know how to chop into smaller questions, without removing context from the question?

Huge (more precisely, conceptual) kind questions may require more effort involved into making an accurate wording to survive.

Question wording should ideally "guide" the various answers coming from different perspectives, helping them converge into useful body of knowledge instead of diverging into garbage bits of unrelated advice.

You need something, some wording to effectively repel 1 low effort answers - in your case one example of garbage answer could be like "you'll never go wrong following KISS principle (keep it simple, stupid)".

You need wording helping to connect different answers into some larger picture that makes sense.

  • Question wording would ideally allow reader to connect advice like "here are factors to consider as favorable for Composite", "this is what you take into account deciding whether to use Tree or not", "assess maturity of your design based on patterns density metric" - to build something bigger on it, instead of leaving it lay as an unsorted heap of minor ideas.

1 repel garbage answers - one sure can not 100% protect a question from getting garbage answers. But at least try to phrase the question so that you can come to Meta, say "Here's the question, here's the answer, I don't feel like the answer is OK" and have a good chance of garbage post being downvoted by active community members who happen to read your evaluation.


The last, but not the least, leverage an

iterative approach

Given above, there is always a risk that at first try you'll get your wording wrong. To remedy that, keep an eye on the activity around your question.

Study comments and answers and track whether these diverge into a chatty discussion of open-ended topics. If you notice signs of such an entropy, re-evaluate the wording of your question and try to figure how to make it target a more focused input.

As a radical measure, consider closing your question. Do this if you see that things go out of control faster than you can address it with preventive question edits. If I understand correctly, you can get that closure by flagging your question for moderator attention (consider checking at meta or in chat whether this is an appropriate approach).

Closing the question will give you time to thoroughly review and edit it. If it turned out that you really need that, this is an indication that you may have to invest a substantial effort into wording rework, like passing it through an Atwood's transform 2.

Asking in chat or at Meta for rework advice for a closed question wouldn't hurt either.

2 Atwood's transform - here is a recent example for the reference:

2
  • Thank you very much for this answer (+1). I don't understand how closing your question and then asking for moderators to fix it would help me though, as I often feel very responsible for much of the trash that arrives. I can't imagine that I would be better at articulating the question after having it closed for a bit, and also, I almost always need the answer asap. I didn't know that Meta-Stackoverflow was also a place to post "Here's the question and answer, I don't feel like the answer is OK"-issues. I only thought it was for questions about the use of the site. Thanks for letting me know.
    – Aske B.
    Commented Aug 22, 2012 at 13:19
  • I didn't mean "asking mods to fix it", sorry if that was not clear. While question is closed (which protects it from collecting garbage answers), you thoroughly rework it, without a need to hurry -- asking community and mods for advice if you want. The points where mods get really involved are when you flag it for close and then reopen, all the rest can be done without them. Actually close/reopen can be done without mods too, but you may want to involve them if you want to get it done faster than by community (5 close / reopen votes from privileged users may take long time to gather)
    – gnat
    Commented Aug 22, 2012 at 13:48
2

I have some advice that has helped me develop a lot, so I figured I'd share:

Being the Answerer

An easy way to learn how to ask questions is to try read and answer other people's questions.

That way you'll quickly get an idea of which information is lacking in questions, which information is too much. Even though you're really just learning how you prefer questions to be articulated, I have no doubt that this technique will eventually improve your asking-skills.

If you've asked a handful of questions and have started to learn how you prefer answers to be, this is basically the same method, but with opposite roles.

This is not really a newbie-friendly method, since most new people come to StackOverflow because they're frustrated of their current programming problem, and they're not interested in other people's problems right now.

But for the users who return to StackOverflow when they face a new problem, yet are frustrated how to ask good questions (and get good answers), this could be a good tool for improvement.

Broad Questions

Generally, I think broad questions are just like all the other questions, they just require more asking-skills, because they have to be just as short, but still as informative.

Reading the FAQ

The obvious solution that every asker with more than one question is tired of being directed to over and over.

Even though I'm not really a fan of learning by reading, it won't hurt to at least look through the FAQ before asking questions.

Sure it won't magically make you great at asking, but it will at least give you a very basic idea of what questions should usually look like.

1
  • I'm thinking of expanding the "Broad Questions"-section more later, when I'll eventually learn more about this.
    – Aske B.
    Commented Aug 27, 2012 at 20:37

Not the answer you're looking for? Browse other questions tagged .