Smart Questions

26 Jan 2017

Asking a Smart Question

In How To Ask Questions The Smart Way, an essay written by Eric Steven Raymond and Rick Moen, the authors pointed out several different strategies to post a “smart” question on different forums. They explained that by asking a smart questions, may people will be able to receive the kind of help they need from the people that knows best - the hackers. As stated in the essay, hackers are “hostile to people who seem to be unwilling to think or to do their own homework before asking questions” (par. 5 in the Introduction section). Thus, in this paper, I will be taking a look at a smart question and a “not so smart” question and comparing it to the information found in Raymon and Moen’s essay.

The “Not Smart” Question

Source: http://stackoverflow.com/questions/41886539/how-to-convert-php-function-to-javascript-function

In this example, the user asked for help with converting a PHP function into a JavaScript function, however, this question lacked several elements that would make it a “smart” question and as a result, several of the users on this forum were quick to tell the author what was wrong with his question.

The first mistake this auther did was post this in the wrong forum. As Raymond and Moen said, hackers are unlikely to hlep those who “seem to be unwilling to think or do their own homework before asking questions.” In this post, the author only posted the php function code without posting any of their attempts of translating it into javaScript. This resulted in several users asking the user to post his own attempts at the javaScript function on the thread. In fact, one of the users even commented how this is “not a code translating service” (posted by user Xorifelse).

The next mistake was that this author left this question open-ended. He only posted the php code and asked the forum for help in translating the code into JavaScript. This is a problem because the author did not state specifically what he needs help with in translating the code. By not being specific towards the problem he is having, it shows that this author is probably asking for help with a problem that he did not try to do by himself and wants someone else to do the work for him. However, because he left this problem open-ended, the author ended up not recieving an answer to his question or even recieving any type of help.

In regards to the previous point, the next mistake was that the author did not state any symptoms his own code gave him. Had he given the forum what went wrong with his own code, if the author did work on his own code as he later states in the comments, he would have the people helping him be able to focus on that one specific problem and he would have probably gotten his answer with a relatively fast response time. Wih these details, he could have also prevented all the run-around in his comments were users repeatedly asked him to post his own code.

The Smart Question

Source: http://stackoverflow.com/questions/41888115/unable-to-connect-to-mysql-database-by-hibernate-due-to-mysqlsyntaxerrorexceptio

In this example, the user is having trouble commecting to the MySQL database through hibernate due to a specific error. This question was very thorough and thought out. As a result of posting a smart question, the author was able to get an answer to her problem quickly.

The first good thing the author did was creating a title that was specific to the author’s problem. As Raymond and Moen stated, a “good convention for subject headers is “object-deviation”.” The author’s title read “Unable to connect to MySQL database by hibernate due to MySQLSyntaxErrorException: Unknown database ‘dbname’ error.” This is a very good title since the author was able to tell the forum exactly what was wrong with her code. This is very important because as users are scrolling through the web, the first thing they see when looking at someone’s question is the title.

The next good thing the author did was use clear, grammatical, correctly-spelled language. This is important for several reasons. The first being that by writing correctly, you won’t be seen as “a semi-literate boob (who) will very likely be ignored”, as Raymond and Moen states. Hackers have found that “people who are careless and sloppy writers are usually also careless and sloppy at thinking and coding.” Another reason is that the people who are trying to help you can often be distracted or irritated with the lack of appropriate grammar. For example, by typing in all lower-case letters is “slightly annoying … (and) difficult to read”, stated by Raymond and Moen. However, the most important reason is to let those who are trying to help you to be able to find out exactly what you need in a clear and precise way, which is through the author’s writing.

Again, by writing clearly and precisely, the author was able to explain her problem very clearly and precisely. By writing the question in this way, the author is able to get her answer much quicker since the people helping her are able to know exactly what the author needs help with.

Another good thing this author did was describing the symptoms of her problem, which was receiving the error. By stating what the error was and when she got the error, the users helping her was able to pinpoint exactly where the problem was occuring and why. In describing her symptoms, she described the whole picture so that the users helping her will also know what she wants her end product to be, thus in cases where there could be multiple solutions, the users helping the author will know which solution will be best to help the author reach their end goal.

Conclusion

In conclusion, I have given an example of a “not smart” question and a “smart” question and talked about how these questions were either successful or not successful. Overall, the “not smart” question was never answered because of the reasons listed above, thus, it proved to be a waste of time for the author of that question. The second example, which was a “smart” question, was answered fairly quickly because of her good questioning skills. Thus, we were able to see the effects our “questioning skills” are in these open source software.