Asking questions may seem like a simple task, but getting the answer you want is a different story. Smart questions are important for software engineers as it provides a greater context of what you are capable of and what you are in need of assistance for. Being able to explain your actions so far helps eliminate possible answers that you have already attempted and saves everyones time. Explaining yourself thouroughly helps especially on public forums like Stack Overflow because not everyone will be able to understand your thought process and decipher what you really want out of that exchange.
Many smart questions can be found on the Stack Overflow forums and are easily identifiable by the effort the user puts into their question.
An example of a smart question is this post asked by user Mottie. This user wants to get all unique values in a JavaScipt array.
This is a smart question because they provided information that they found an existing code snippet on the internet, but fails with an existance of a zero in the array. They also found another code snippet on Stack Overflow that doesn’t fail and they specify that they want to learn what was causing the prototype snippet to fail. This question can be identified as a smart question because their are lots of helpful answers that are highly upvoted and the question itself is highly upvoted.
Stack Overflow allows for any user to post questions and this can lead to many not so smart questions to be asked. For example, this question by user Jeff is a not so smart question.
The user was assigned a program to do in their class that outputs “Hello World”. There are many problems with this question: no specified coding language, it’s a basic program and shows that the student doesn’t attend class, it’s just a classwork assignment. The quality of the question can be reflected in the answers as they are quite snarky. In addition to the snarky conmments, the question as a whole has a score of -27.
Upon reading this concept of smart questions, it reinforces the notion that I need to make precise questions as I have a habit of asking broad questions in hopes that the other party magically understands my situation.