Efficient Questions, Efficient Learning

10 Sep 2020

Whenever one is working on an assignment for school or on a project for work, asking questions is an important skill to have. Questions allow us to figure out exactly how to perform certain tasks, get opinions from others, etc. How one should go about asking these questions is something that not everyone realizes is important to get a good response back. Being specific and clear in one’s questions can mean the difference in getting good and bad feedback. In software engineering, asking good questions is especially important with the amount of information and possible configurations related to software engineering. There are many coding languages, with many nuances, many ways to implement a certain solution in code, etc., that providing specific and relevant information when asking a question is key in software engineering.

What makes a good question?

A good question is one that relays what the asker wants to know the answer to clearly without any ambiguity. To make sure the receiving end understands your intents, a good question would use clear wording, add specifics to the problem that is being addressed, as well as state exactly what is trying to be answered. It is easy to be caught up being frustrated when solving a problem, so taking the time to clear your thoughts and format the question to express exactly what the issue is, is essential. An example of a good question on Stack Overflow: the title of the question is “Why is processing a sorted array faster than processing an unsorted array?”. The contents of the question is well structured and detailed giving the person reading the question a good idea of the situation as well as what the asker would like answered. The question includes relevant code, and gives good insight, like that this question was not just a result of the coding language used.

Bad questions can be detrimental to one’s progress when trying to solve a problem. When one does not put the thought into asking a good question, the resulting bad question may result in answers that are not completely relevant to what is being solved. With this, it also does not allow the asker to think heavily about what they might be troubled with, which in of itself may help the asker solve a question on their own. An example of a bad question on Stack Overflow: the title of the question is “The program stops”. This is not efficient as it does not provide much information into exactly what the problem is. Then in the code snippet provided in the question, is relatively messy as it includes a good amount of code not relevant to the question. Then lastly the question does not provide much troubleshooting or logs of the issue of the code. Asking a good question would have allowed people to better understand what this person’s problem is.

Conclusion

Asking a question is a relevant life skill that makes solving various problems easier, getting people’s thoughts, etc. In the field of software engineering it is paramount to ask good questions, as to receive a relevant answer, the person receiving the question has to understand the situation that underlies your problem. With many different variables that come in the software engineering field, one must ask good questions, where it is clear what the problem is and what the asker wants to know.