Smart Questions! A way to a Hacker’s heart (and brain)

08 Sep 2021

“Why does a question have to be smart if I only want an answer without learning anything?” Thinking like this is a foolproof plan to not get your question answered.

Why smart questions are important for software engineers

Software engineers are not going out of there way to answer a question that you can look up online, just to cater to your every whim. Software engineers want questions that provoke their thoughts, that show new problems, ultimately so they can sharpen their understanding of a certain topic. Smart questions are a collaboration between the user and the “Hacker”. Smart Questions are very specific and show that the user has researched the problem, attempted finding a solution, and have a very good understanding of their code. When a Hacker finds a Smart Question they don’t have to waste time finding the specific issue and get straight to problem-solving and learning more. As a software engineer asking Smart Questions is important not only because it helps your own understanding of the problem as you write out your question, but also Smart Questions have a higher chance of being answered by a Hacker. To show the do’s and don’ts of Smart Questions I reference the essay “How To Ask Questions The Smart Way” by Eric Raymond and Rick Moen.

Link here

An example of a Smart Question

StackOverflow link: here

The question summarized is: On Windows 2019 vm, using Apache2.4 when pyttsx3 (which is a text to speech conversion library) is called it is producing empty .wav files. Apache is set up so the user can use python in cgi-bin scripts, The user has a script that when called on the command line produces a 115 kb .wav file that contains a spoken version of the given text. However when the user invokes the same script via a web browser it creates a 46b file that has the .wav header but no data.

I don’t understand the topic of the questions but I can breakdown why this question is a good example of a smart question by how it follows the precepts established by Eric Raymond. First I have good reason to suspect that the user did their research before asking the question on StackOverflow. The user has tried multiple solutions such as running WAMP on a Windows 10 machine, or having Apache use php to call python as a shell command. Even if I don’t know exactly what the user is talking about, they have tried many solutions. Second, the user specifies the versions of important things on their Windows 10 and Windows 2019 machines.

Since the user was very specific about the issue, an intelligent discussion started and in the end a Hacker hypothesized that it might’ve been an environmental issue, and gave steps on how to fix that issue. The Smart Question was specific which means the Hacker could give a good answer.

An example of a Stupid Question

StackOverflow link: here

Again I feel it is important to emphasize that I don’t understand the topic of this question, but this time I feel like I am not alone in that thought. According to Eric Raymond’s precepts, this is a stupid question. First, there is no evidence that the user who posted the question did any research, testing, googling, reading, etc, when it came to finding a solution on their own. The user is also not asking a specific, technical question, instead the only thing the user is asking is:

 Brute-force attack on wifi using Android is it possible

This header is not only open-ended and unspecific, but the grammar is horrible. The user’s location is Bangladesh so I assume that English is not their first language, but Raymond gives plenty of solutions to non-native english speakers when it comes to asking Smart Questions. Even without the grammar issues the user does not expand on what they are asking in the body of the question, only repeating what is in the header. This is a type of question that a “hacker” wouldn’t even glance at because of the header. At the end of their question the user says that it is very important to him that this question gets answered, which we all know is a big no-no when it comes to asking Smart Questions. Hackers who answer questions on forums like StackOverflow are not answering out of the compassion of their heart, nor are they going to tutor you information you can find online. Hackers look for questions that are specific and challenging because they like to problem solve. A question like this one is likely to be on the internet already, so the user should’ve STFW. On the website there was no responses and the question was closed because of a lack of clarity and detail.

Conclusion: A new insight into question asking

I will be honest to you, there was many a time when I asked stupid questions, whether it be about homework or just wanting to get an answer without working. Now I realize that these questions are not only annoying software engineers who are trying to learn, but also limiting my own understanding of a problem. Odds are that if I ask a stupid question and get a correct answer, the next time I come across the same problem I wouldn’t be able to answer because I didn’t learn anything by asking a stupid question. Asking Smart Questions is time-consuming but after asking a really good question, if you come upon a similar problem you will probably be able to solve it yourself.