Cultural Blog Week 9

The Perfect Question

Asking questions can be difficult for all of us, but admitting you don't know much about something is always going to be the unavoidable first step in the learning process. Reviewing past questions that I've posted to the DBC community and elsewhere, I think that the first concept that I approach with is wondering if there are other people that might have the same question. There have even been multiple instances where I've drafted a question to post to the group, only to find someone beat me to it.

Getting some distance from emotions like frustration and feelings of inadequacy goes a long way in helping me decide what I actually want to ask. Often when my instinct is to blurt out something like "Why can't I GET this?" or "What is wrong with me? Am I just dumb?" I have to take a step back and get out of my own head. Part of constructing a precise and helpful question is explaining objectively what the source of your frustration is instead of simply announcing that frustration.

Researching should always be the first step. See if someone out there has already asked the question, or something similar, and been answered. For me, the danger is often that "research" can mean sidetracking, going down an unexpected and interesting rabbit hole and forgetting the question I was researching in the first place. So it's important to stay on target and stay focused. Sometimes I will set a timer that will be visible on my screen as a reminder not to wander away from the task at hand.

A good question is specific, succinct, and consists of a problem or error that is easily reproduced. That last one is especially important because if you can't replicate the conditions under which you formed the question in the first place, how is anyone supposed to give an answer? When posting a question online to a forum, or somewhere like Stack Overflow, you'll want to format your code so that it's readable and correctly indented. This leads to the next point, which is to proofread. Spelling and grammar errors don't bode well for your attention to detail when working on your code.

Last but not least, once you've received an answer, what if you don't understand it? There have been plenty of times where I've been more bewildered by the answer than the question. If this is the case, push for more information, ask the question in a different way, or see if the person answering would be willing to explain using a different metaphor or scenario.