One of the toughest things for some people to do in a technical field is to ask a question when they have a problem or are stuck. On top of that it can also be very hard to ask a good question, one that people will easily be able to read, digest, and then answer quickly and correctly with the information provided. On sites like Stack Overflow, missing information can demotivate people from helping or it can make it difficult if not impossible to provide an answer. Friends, co-workers, and classmates can also be frustrated by missing or overlooked information. Here are some potential issues with questions:
- Lack of context: ie. operating system, user restrictions
- Poorly phrased question or description: e.g. bad grammar or an ill-formed problem statement
- Missing Code/Data Sample
- Poor title or subject
Learn How to Ask a Question
Now that some of the potential issues with technical questions have been discussed, we can mention a few ways to avoid these problems. When a problem is encountered and you must ask a question there are several steps that can be taken to ensure a good question is asked and an answer is received. Prior to asking someone else a question, make sure to do some research on your own to see if there is already an answer out there. If there isn't an obvious existing answer, take the time to properly form your question. Think about the problem, what information you have, what information you need, and what other circumstances you're dealing with (OS, security, etc.). Make sure there is the appropriate code sample and data sample, if applicable. If your code needs to be compiled and you can, it is appreciated if you can do that ahead of time.
Once you have all of this information compiled together, review your question before you post or send it off. When doing this, you should review the question to see if it makes sense. There are times when reviewing your own question that you'll find the solution as you think things over. Now that you're ready to ask your question, make sure that the subject or post heading is detailed and descriptive.
Spending time to ask quality questions will increase the odds that people will assist you, as well as potentially helping you find the answer to your own question. Adding all of these little details may seem excessive and time consuming, yet they can help you get the help you need quicker. This comes about by not needing to constantly clarify your question or provide additional details that you could have included from the beginning. Doing the research and reading for this post has made me realize how much I can improve my own questions in the future, which has been a terrific reward. Best of luck asking your own quality questions!