There Are Such Things As Stupid Questions

26 Jan 2022

At one point or another we have all heard or have been told the phrase: “there is no such thing as a stupid question”. Well… “There is no such thing as a stupid question” ? false : false. Eric Raymond’s essay How to ask questions the smart way he gives the full red pill rundown of the ins and outs of what constitutes a “good” and “bad” question. In short he details the best possible way to construct a well rounded question in order to have the highest chance of receiving a response.

How To Avoid Crickets

In Eric Raymond’s essay How to ask questions the smart way he provides a list of criteria, he splits these criteria into two different categories “Before You Ask” and “When You Ask”.

Before You Ask

Before asking a technical question by e-mail, or in a newsgroup, or on a website chat board, do the following:

1. Try to find an answer by searching the archives of the forum or mailing list you plan to post to.
2. Try to find an answer by searching the Web.
3. Try to find an answer by reading the manual.
4. Try to find an answer by reading a FAQ.
5. Try to find an answer by inspection or experimentation.
6. Try to find an answer by asking a skilled friend.
7. If you're a programmer, try to find an answer by reading the source code.

By taking the initiative in doing these tasks before asking a question on any forum it demonstrates to, as Raymond says, hackers that the person in question is someone who is putting in the genuine effort to learn more. Raymonds sums up perfectly in the quote that: “while it isn’t necessary to already be technically competent to get attention from us, it is necessary to demonstrate the kind of attitude that leads to competence — alert, thoughtful, observant, willing to be an active partner in developing a solution.” He makes this important point to emphasize that it is ok to be ignorant, but it is not ok to feel entitled to an answer after asking a novice level question. Following these guidelines also demonstrates that the person has the ability to learn from answers, giving the responder the confidence that they won’t be wasting their time on an incompitant person. Moreover, it nurtures an environment that rewards intelligent and capable thinkers and punishes social loafers.

When You Ask

Choose your forum carefully Be sensitive in choosing where you ask your question. You are likely to be ignored, or written off as a loser, if you:

1. post your question to a forum where it's off topic
2. post a very elementary question to a forum where advanced technical questions are expected, or vice-versa
3. cross-post to too many different newsgroups
4. post a personal e-mail to somebody who is neither an acquaintance of yours nor personally responsible for solving your problem

When asking a question it will be the person’s benefit to take into consideration all of these things. It is worth mentioning that it is a smart idea to first search forums for similar questions so that the same questions do not have to be repeatedly answered. In addition, writing lengthy grammatically incorrect descriptions (channel flooding), using weak and meaningless title headers, and using an arrogant tone will prevent quick and useful responses. It is important to remember that volume does not equate to quality, nobody wants to read through a long question riddled with spelling and grammatical eros void of any sustenance. Another thing that doesn’t need explanation is posting homework questions on stack overflow. Being explicit and precise is key!

Another way to demonstrate good etiquette is by using a project mailing list as it allows for a richer group setting in order to more directly answer questions, the more minds the better. Moreover, it prevents the harassment of individual programmers and allows for future inquirers to easily look at your question and its answer rather than asking the same question again.

When formulating a question it also helps to make it easy to reply, provide accessible and standard formats of code or files, and provide minimal test cases. This provides more relevant information without detracting from the goal of the question. Another way to provide precision to the question is by describing the symptoms of a problem and providing its chronology rather than guessing random problems, we want to describe the goal not the steps. Finally, following up with a thank you and update the post to indicate that it has been resolved.

Stupid Questions Exist… Like Seriously

“BAD”

This is an example of a BAD question, found on StackOverflow. The title reads: “Run this Java script code and send me the output”, quite the pompous tone of a title. It only gets worse because the authors description is one line which says, “Please I NEED some one to run this code and send me the output, because i am unable to run it” and a whole block of their code. This was most likely a user desperately trying to find an answer to their homework problem. Unfortunately StackOverflow is not the forum for these types of questions as they will be immediately overlooked due to the fact that the author does not indicate any sort of effort into self research or explicitly in what they are trying to achieve.

“GOOD”

On the other hand this is an example of a GOOD question, found on StackOverflow. The title is: “What techniques can be used to define a class in JavaScript, and what are their trade-offs?” and demonstrates that the author knows how to create an explicit and precise question. Moving to the description the author briefly discusses their prior knowledge of the subject, specifically asks for syntax and help and the reasoning behind it, and provides an article to show that they have done their research to answer their question before making a post. The author clearly indicates that they are competent and are deserving of a proper answer without coming across arrogant.