Whenever I have a question, the first thing I do is usually to search for an answer using Google. Especially when it comes to programming, Google is basically my best friend. Google gives me a list of links to forums where my questions was already asked by someone else. Oftentimes, only one or two of the links will provide answers that are actually useful for my problem. Why do some questions get great responses, but others do not? It probably depends on how the question was asked. When asking a question, it is important to show your willingness to learn.
An example of a “smart way” to ask a question can be found here. This is a simple question that even I had when I first started learning Java. This user asks whether he should be using “==” operator or the “.equals()” function in Java. He starts by saying that he always used the “.equals()” function, but saw some code that uses the “==” operator. This question received many responses, which may have to do with a couple factors. First, this question was posted to StackOverflow, a forum for developers, and the header “Comparing Java enum members: == or equals()?” is specific to what the question is about. The question doesn’t have any grammatical errors, the code provided is easy to read, and he describes his question clearly. He also provided a link to another question that is similar. Many of the responses were very detailed and provided examples of when to use the operator and when to use the function.
On the other hand, an example of a “not smart way” to ask a question can be found here. This user is asking for help with the video game called Minecraft. He is trying to install a mod, and is receiving some type of error. First of all, he is asking for help with Minecraft on StackOverflow. I am sure there are better places to ask for help with Minecraft mods. The user also doesn’t provide much information other than “my code won’t run.” Furthermore, the code he provided is very unappealing and hard to read. This question received a grand total of one response which was to “Check your Java version,” a very lazy answer.
Asking questions is an important part of learning, but you can’t expect to get a “smart” answer if your question isn’t “smart” in the first place. I have not asked a question on a forum like StackOverflow myself, but if/when I ever have to, these qualities of “smart questions” are things that I plan to consider before asking.