What is meta? ×
Meta Stack Exchange is where users like you discuss bugs, features, and support issues that affect the software powering all 131 Stack Exchange communities.

I don't know how many times this has happened:

  • I have a problem
  • I decide to bring it to stack overflow
  • I awkwardly write down my question
  • I realize that the question doesn't make any sense
  • I take 15 minutes to rethink how to ask my question
  • I realize that I'm attacking the problem from a wrong direction entirely.
  • I start from scratch and find my solution quickly.

Does this happen to you? Sometimes asking the right question seems like half the problem.

share|improve this question

migrated from stackoverflow.com Sep 3 '09 at 19:29

This question came from our site for professional and enthusiast programmers.

8 Answers 8

up vote 17 down vote accepted

At work a friend and I often bounce programming problems off of each other when we encounter a snag. I would say about 75% of the time simply asking the question yields the answer. Often times just trying to explain the situation out loud forces you to think about it in a way that you haven't been while sitting there in front of the code.

share|improve this answer
1  
+1, I also recommend the book "Pragmatic Thinking & Learning" by Andy Hunt. The book is about such stuff. –  bwalliser Mar 4 '09 at 22:03
    
This is the reason for the "rubber ducky method", in which you explain your problem to an inanimate object (a rubber ducky was the first used) and often find your solution while explaining it. But if simply explaining your question offers you the solution, no need to include another person. –  Neil N Mar 4 '09 at 22:10

See How To Ask Questions The Smart Way by Eric S. Raymond.

Basically, you should be trying to solve the question yourself, and documenting how you already tried to solve it. This not only makes it more likely for you to SOLVE it yourself, but keeps other people from barking up the wrong tree (and thus comments like "I already tried that, you doofus; thanks anyway, though").

share|improve this answer

Oh, definitely. Formalizing the problem from "vague collection of knowledge in my head" to "sentences that would make sense to someone outside my head" is very clarifying.

Now, having solved my own problem by attempting to write it down for a coworker, or for SO, how often do I go ahead and post the question (and my own answer) so that others don't have to go through the same process?

share|improve this answer

My friend used to call this "Telling it to Darth"

At his old company they had a life size Darth Vader cut out in the hall way with a chair sitting next to it. Whenever they had a bug they couldn't figure out, before asking another dev for help, they had to sit in the chair and tell the problem to Darth.

He said it had a roughly 50% success rate.

share|improve this answer
2  
LOL Yeah this was introduced to me by an old boss/teacher as "Talking to the Duck". You would just state your problem aloud and come along to your solution. We would go to a coworker and say "Hey, I need to talk to the duck." they would just sit there and listen. –  Quintin Robinson Mar 4 '09 at 21:37
1  
@Quintin, I usually ask my wife to come into the room. She humors me and just stares blankly until I tell her I've figured it out. –  JaredPar Mar 4 '09 at 21:43
4  
Yeah that works well too, although I think that my be part of the reason of why my ex is well.. my ex. –  Quintin Robinson Mar 4 '09 at 21:45
1  
@Quintin, my wife is an english grad student so she's perfectly used to not knowing what I'm talking about and I am certainly used to not knowing what on earth she's going on about. It's a great relationship. Mutual lack of understanding –  JaredPar Mar 4 '09 at 21:51
1  
I know this as Rubber Ducking: c2.com/cgi/wiki?RubberDucking –  Joachim Sauer Mar 4 '09 at 22:02
1  
@JaredPar Ahh mutual ignorance and an understanding person, you're a lucky man! –  Quintin Robinson Mar 4 '09 at 22:04

Explaining a problem to someone else forces you to understand it better. That's why teaching can be a great way to learn. When a student asks you a question that you've never considered before, it's a great motivator to think.

That's also one of the advantages of pair programming. Discussion leads to greater understanding.

share|improve this answer

Yes - It does happen to me.

share|improve this answer

No - It does not happen to me.

share|improve this answer

Yeah -- usually about five minutes after I've asked the question.

There's a quote leaping to the front of my mind: "A properly-stated question contains its own answer." Unfortunately, I can't for the life of me remember where I got this quote from.. Anyone know?

(it could also be "properly-phrased" or "properly-formulated")

share|improve this answer

You must log in to answer this question.

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