After reading the article How To Ask Questions The Right Way by Eric Steven Raymond and Rick Moen, an article which is almost 20 years old, I’ve come to realize how much better the internet has gotten over the years… or maybe not. The article goes through all the different kinds of rules to follow when asking a question online. For example, making sure to search your question online before asking others for an answer or to check for grammatical errors before posting a question. The idea that these rules were not common sense was surprising and helped me realize that the article was written in a time where netiquette wasn’t quite developed, as nowadays searching the web before asking a question is a no-brainer. But then I looked on Stack Overflow, sorted to the most recent and started to see questions that broke the rules I had just read about. Perhaps not as bad as “How do I loop this (Java)”, but questions with no clarification or requested solution. As such, this got me interested in the “smart” and “stupid” questions on the internet, and more specifically, Stack Overflow.
In the article How To Ask Questions The Right Way, the author discusses various preliminary procedures before asking a question as well as different methods of writing the question. They discuss that in writing a smart question, it makes it easier and more likely to get responses, helps to save time, and saves the inquirer from potential toxicity. As I previously mentioned though, many of these rules seem to be known by most anyone using the internet nowadays.. Apart from the minority who are perhaps new to the internet, unaware of these rules, and those who do it on purpose, it’s actually not that easy to find blatant examples of these rules being broken on online forums. Now, in my opinion, the reason for this is because people genuinely want answers to their questions, and want them as soon as possible. In the scope of computer programming, most of these people are coding for work, school or for fun, and regardless of which of those they are, answers to issues they come across are essential to keep progressing. This is why asking smart questions is so important, and why it is the norm now - because people need answers and the best way to get them is by asking them in a manner which will yield the best results. Sure, you can ask “Please fix this code” and receive working code, but by asking how to fix it and receiving responses that are constructive, you can learn and advance your skills.
When browsing stack overflow, it doesn’t actually have a worst rated filter, only a best rated filter. So, I browsed from the most recent forums in search of a ‘not so smart’ question. Surprisingly, it wasn’t as quick as I thought it would. Most questions were at least decent and were understandable in their direction… and then I came across this article. StackOverflow - How can I keep the one value different object in Javascript . It has no explanation, a confusing title and no real question. To summarize what was being asked…well, the author wanted to know how to “keep the one value different object in Javascript” and wrote out a few lines of code that they had written and an expected output. The first problem with this question is that the title is confusing and grammatically incorrect, making the reader wonder what they are meant to answer. Next, the description has no supplementary information of what is being asked or what the author had already tried. Even one of the comments asks “Please explain your question and add what you have tried”. To avoid writing these kinds of questions, we can now look at an example of a smart question.
After reading a few not so smart questions, I decided to look for a ‘smart’ question, which was unsurprisingly not too hard to find. Going on Stack Overflow and filtering by top score, I quickly found this article : StackOverflow - Why is processing a sorted array faster than processing an unsorted array. The author asks for why processing a sorted array is faster than an unsorted array, providing code they wrote to test it, documentation, and a few more clarifying questions. This made the question very clear for any viewer in addition to what the author wanted answered. This is seen from the plethora of responses, the quality of the top response and the amount of upvotes both the question and the response has. Another great aspect of this question is its applicability since its scope is less focused on a certain language but an algorithm.
Asking questions is a great way to get answers to issues you may have in your coding. However, it is important to make sure that you are asking smart questions to make sure the answers you receive are helpful. While it’s not realistic to employ every rule stated in the article How To Ask Questions The Right Way , it can definitely help to make sure you aren’t misspelling anything or you might just get the reply STFW!