I’m sure many have heard this statement uttered somewhere before in different environments, often with the intention of alleviating the anxiety of having to understand or reducing the embarrassment that sometimes comes with having to ask for clarification. But is it really the case that there is no such thing as a dumb question?
It doesn’t take a rocket scientist to answer some of the rudimentary questions toddlers will oftentimes ask. “Why is the sky blue?” and “why do I have to eat my vegetables?” may be such examples. But, it does take a rocket scientist (or someone who is excellent with math and physics) to answer the question, “How much fuel will I need to launch this satellite that weighs X amount into orbit?”. We understand this intuitively with the context of who is asking the question, because it’ll dictate whether or not we’d expect them to already know the answer. From this we can conclude that a scientist asking a simple question may be considered dumb, but a toddler asking a complex question may be ingenious.
So then, there is such a thing as a dumb question, right? In certain cases based on the context of who is asking and what we’d expect them to already know, sure. But perhaps this is the wrong thing to contemplate as it should matter more on how a question is asked, rather than what is being asked.
Eric Raymond provides a guide on how the open source community (and people in general) can ask smart questions. In this guide (linked here), he gives tips on how to ask for help from strangers in a way that is clear, concise, and productive.
There are many more sections that he covers that illustrate different attributes of what he considers a smart question, but for now these main points cover a vast majority of issues people may encounter when asking for help.
An example of some attributes that aren’t conducive to a smart question comes from StackOverflow, where a user that goes by the name of Brett asks a question about how to make a fullscreen window with Jetpack Compose. This is a toolkit for building Android user interfaces which I personally am not familiar with, but that is besides the point. In the question, he provides a very brief overview of what he is trying to accomplish, what tools within Jetpack Compose he is trying to use to accomplish it, and what happens when the code snippet that he shared is executed.
Here is the link to the original post
While the problem itself may not be largely complicated enough to warrant an essay’s worth of details from the author for someone to figure out, there is very little explanation on what has already been tried as a solution to their problem. One of the first things that Raymond highlights in his guide for smart questions is that displaying your process of attempting a solution is very helpful for others to follow along in the problem-solving process. It also exemplifies that you are invested in trying to solve the problem yourself and are not just looking for cheat codes from somebody to solve the problem for you.
This lack of investment may also come up in how simple the solution may have been to find, if the author dug a little deeper. One user that goes by the name of Javi mentioned looking through the StateSheet documentation (with a provided link) that explains the syntax required to solve this exact issue. Not glossing over something as simple as the documentation of the tools you are using to build your UI is a mistake that may paint you as uninvested and lazy.
Although searching through chapters of documentation and pages of FAQs for a chance of your question being answered is not the most appealing way to spend an afternoon (especially if you’ve been stuck on an issue for longer than you’d hope you would be), it is a necessary step to being a part of a productive community of problem solvers.