My Thoughts on Smart Questions
Effective communication is an underappreciated skill that is essential in the field of software engineering. One part of this skill is the ability to ask questions the “smart way”, as mentioned by Eric Raymond in his essay. Using this essay I will discuss the importance of smart questions specifically for software engineers, while using real examples from StackOverflow. These examples will show the positive and negative results of using the guidelines mentioned in the essay.
Good Smart Question Example
In his example of a good smart question, the developer asks a well-structured and specific question. The author asks why it is preferable to use a pointer rather than the object itself in C++ programming. They go on to show curiosity about the benefits of certain operations and are looking for a clear explanation of his programming concept. The question is clear, concise, and demonstrates the author’s willingness to learn and understand a fundamental concept in programming.
Explain Smart Question
This smart question demonstrates the importance of providing context, being specific, and showing a genuine interest in learning. It led to efficient and effective help from others participating on StackOverflow. The responses to the smart question were the majority positive. Many experienced developers provided detailed and informative answers. They explained the advantages of using pointers and provided examples showing proof of concept. The discussion was efficient, constructive, and effectively addressed the smart question.
Bad Question Example
In this example of not using the smart question guidelines, the developer asks a vague and open-ended question about whether it is bad practice to use typedef as a smart pointer. This question lacks specificity, context, and a clear problem to solve. This shows that the author did not research prior to asking or put in effort to understand the subject. This will cause the community trouble providing helpful and specific answers.
Explain Bad Question
This “not smart way” question shows the importance of providing context, being specific, and showing prior research when asking for help on technical questions. When a question does not use the elements of the guidelines, it can lead to less effective and efficient responses from the community. Many of the replies ask for more specific information and clarifications. While many responses provide an answer to the question, they also help with organizing the code provided when not asked to.
Smart question: c++ - Why should I use a pointer rather than the object itself? - Stack Overflow Not so smart question: c++ - Is it bad practice to typedef a smart pointer? - Stack Overflow