Asking questions is a skill
If you’re going to get into any sort of technical job, you’re going to have to ask questions. A lot of questions. Unfortunately, too few people understand how to ask questions properly. Asking questions is a skill. It has to be learnt.
Here are a few of the most common mistakes I see people make every day on Stack Overflow, or on other technical forums…
1. Not enough information
“I installed Orchard, and it doesn’t work. Please help”
Put yourself in the shoes of someone trying to answer this. Can you really imagine anyone can? What are you expecting the answer to this could be?
How does it not work? What did you do? What were you expecting, and what happened instead?
Ask yourself: is there enough information for anybody who’s not you to figure out what the problem is?
Notice how asking a question that is too vague will only get you more questions in return. This is a sure sign, that you should learn to read and interpret.
2. Too much information
“[wall of text explaining your setup with a luxury of irrelevant details…]
Why does the screen flash blue when I click the green button?”
The people who are likely to be able to answer your question can’t invest a lot of their time understanding all the specifics of your business, nor should they have to. It’s nice of you to spend the time to give all those details, but that doesn’t mean you should expect your interlocutors to spend any time reading them.
Focus on the details that are immediately useful to answering the question. Distil the question itself to be free of any specificities that make it only applicable to your specific case. Not only will you make it more likely that anyone will read it to the end and answer it, the probability that your question and its answer may be useful to others is improved.
3. Aggressive rants
“I CLICKED THE F$#%ING GREEN BUTTON, AND THE SCREEN DIDN’T FLASH BLUE. I CAN’T BELIEVE PEOPLE BUILD PIECES OF S&*T LIKE THIS AND THEN EXPECT US TO USE THEM.”
Don’t insult the people you’re asking answers from, and don’t insult their work either. Stay civil and professional. That’s a simple one to understand. I can’t believe that people can be so thick in the head that they can’t understand something that F$#%ING SIMPLE :p
4. More than one question at a time
“Where is the green button? What will happen if I press it? Is it normal that the screen flashes blue? Should I build my web site with a CMS? What time is it?”
This one is subtle, and is more about human psychology and common cognitive abilities. If you ask more than one question at a time, you’re lowering your chances of getting a good answer to any of them. Human beings are not good at multitasking. Make it easy for your questions to be answered by asking them one by one. Doing so will also avoid creating a messy and frustrating thread. Last but not least, your questions are going to be more googleable if they are isolated and stand on their own.
5. No question at all
“I pressed the green button. The screen flashed blue.”
Be sure that your question actually is one. Sometimes, symptoms like those in #2 can be seen, but no discernable question can be extracted from the verbose mess. Have a clear and concise question, that makes it very obvious what you’re asking, and that ends with an actual question mark. We should not have to figure out what your question is. You have to tell us.
6. Expecting people to work for free, or to do your homework
“My boss asked me to evaluate Orchard vs. Umbraco. Please send me a spreadsheet of strengths and weaknesses of each, with a dissertation of why your preferred system would be the right choice for my business.” … [five minutes later]… “Why has nobody answered my question? Is this project dead?”
“Give me teh code”
“What does ‘CMS’ mean?”
There are many people out there who are spending a lot of their time answering questions, so it’s easy to get carried away and expect those same people to do for free work that you should normally pay them for, or that you should do yourself.
You must do a minimum of basic research before you ask the community to solve your problems. Any question that is likely to be answered with a link to Wikipedia or to LMGTFY is simply not worth asking. The answer is already out there. You are doing yourself a disservice by being lazy, you’ll look like an idiot, and your question is not going to help anyone else.
Do not ask people to do your research or your homework, or if you do, be prepared to pay them for it.
Ask questions, lots of them: it’s the best way to learn. There are people out there who are eager to give you answers. But for this to happen, you need to treat question asking as a basic technical and human skill. I’m only aiming at the low-hanging fruit here: there is much more to this than a blogger could hope to address in a simple post. Consider your own weaknesses and work on them. You are going to notice the quality of the answers you get rise steadily as you do so. You are also going to learn how formulating the right questions often gets one halfway to solving the problem.