The Art of Inquiry

05 Sep 2023

The power of Smart questions.

With anything in life asking questions is a fundamental aspect of learning and problem solving. However not every question is created equally. Some are vague, terribly framed, or even insulting, while others are clear, informative about the problem, and much easier to answer. The website “How To Ask Questions The Smart Way” by Eric S. Raymond (How To Ask Questions The Smart Way) is a great guide to understanding the importance of asking smart questions. In this essay we will explore the benefits of smart questions and the many pitfalls you can avoid from using them.

What is Smart Question?

In software engineering you often find yourself in collaborative environments, such as opensource software communities or workplace teams where smart questions are vital. They provide efficient problem solving, enhanced learning and demonstrate respect and preparedness. Simply write your question clearly, avoiding grammatical errors and being precise about your problem can save a lot of time and increase the chances of someone being able to help. Finding out what someone is saying should not be the hard part of answering a question so make it easy. In programming you will often run into complex issues where being as precise and informative about your issue is imperative. Doing things like explaining what you have tried to fix it, explaining what environment it is occurring in, or providing any research you’ve done on it can reduce a lot of back and forth and help those answering pin down the problem better. All these and many more are just some of the ways you can transform your questions into smart questions. Below we will go over 2 questions posted on Stack Overflow and show some of the differences in asking a question the “smart way” versus the “not smart” way.

What do you want?

In the first question the subject line is “Line spacing with Latex”, not awful but somewhat vague. Is it about how to do line spacing, a problem with line spacing, or something else? The post goes on with many grammatical errors that at times make it need to be re-read to understand. The user then explains that they saw extra spacing while in PDF and 2 lines showing the floormate they want and the one appearing in the PDF. There is no other information on what specifically about the floormat they want changed, or any of the code that would be causing the issue. This leads to 2 types of responses. Firstly, one asks for clarification, the code, or a screenshot. The other, being more generous, gives a very general and vague answer. The user asking this question did not respond with whether the vague answer solved their issue, which is a problem in its own right, but more than likely the issue was unresolved. This post is a great example of a not so smart question, and the user as well as the ones attempting to answer could have benefited greatly if the principals of smart questions were used.

Helping you help me

The next questions subject line is already starting strong with is naming exactly what is wrong “HTTP Error 500.19 - Internal Server Error”. This subject lets other users know immediately the general issue that is plaguing the user. They go on to explain what they are doing (migrating an app from cloud sites to servers), and their environment (Windows 2008 server 64 bit with IIS 7). This builds a clear picture of what the user is attempting to do and what they are using to accomplish said task. The user continues explaining their default page works but other pages are getting the aforementioned error and provides the code giving the error. By doing this they demonstrate what works and what is the exact issue, helping pin down the exact issue and making the job of the answer much easier as they can view the code giving them problems. Finally, they say please and give thanks in advance, showing gratitude and respect which can go a long way when dealing with others, especially when you are asking something of them.

Question answered!

The question received an answer that was detailed, explained why the error was happening and even a link for more specifics on the issue. These 2 posts show the stark contrast on the give and take in the world of acquiring information. By putting in more work and using smart question methods the second user was able to get more out of other users’ answers. I think these methods in “How to Ask Questions the Smart Way,” are an invaluable resource for individuals seeking to refine their information gathering skills. And in the field of software engineering embracing the area of smart questions is a powerful tool for problem solving, enhancing learning, and fostering effective communication.

Source: Smart Question

Source: Not so Smart Question