Smart Questions, Good Answers

05 Sep 2022

Why asking smart questions?

The ability to ask smart questions is a critical skill that can significantly influence the effectiveness of communication, collaboration, and problem solving. Smart questions not only facilitate the exchange of knowledge but also reflect the asker’s understanding of the subject matter and their commitment to finding a solution. This essay discusses the importance of smart questions for software engineers, evaluates how specific questions fulfill the precepts for smart questions and shares insights gained from this experience.

There are multiple reasons why being able to ask smart questions is important in software engineering. One of them is the efficiency aspect of it. In a field where time is often the essence, asking well-structured questions can lead to quicker resolutions. Engineers who articulate their problems clearly enable others to provide precise answers, which will also contribute to knowledge sharing which can benefit others facing similar challenges.

What’s a smart question?

This user asks “How to extend an existing JacaScript array with another array, withough creating a new array”. This question is very clear. The user specifies that they want to extend an existing JavaScript array (a) with another array (b) and provides a clear example of the desired outcome with a code snippet. The user also mentioned the concat method and acknowledges its limitation in creating a new array rather than modifying the existing one. This demonstrates some prior research and understanding of JavaScript array methods.

This question is a good example of a smart question, as it is clear, explicit, specific and demonstrates prior effort. The question does not come off as urgent or impolite which also matches with a smart question. Responses to this question ended up being well-formed and helpful, without having to go back and forth with the asker.

A not so smart question.

For this example the user wrote a question with the title “Why is TypeScript not functioning as expected in Visual Studio Code?” . The explanation text only says “i get errors in vscode but every thing works correctly. some errors: Type expected.”, as well as a little code snippet without any further explanation of the code.

This question lacks clarity and specificity. While it mentions that there are errors in VS Code, it does not provide sufficient context about what the user has tried to resolve the issue or the specific circumstances under which the errors occur. Although the user provides some error messages, which is a positive aspect, the question lacks a description of the symptoms of the problem in more detail. For example, explaining that what the expected behavior is versus what is actually happening would help others understand the issue better.

This question has not received any answers (in typing moment) which shows that providing context is crucial when asking technical questions. Including relevant details about the environment, configurations, and specific code snippets can significantly enhance the quality of responses received. This question also shows that being explicit about what assistance is needed can help guide respondents to provide more targeted and useful answers.

Take aways

These two examples show how preparation is key when asking a smart question. The preparation not only aids in formulating the question but also enhances the asker’s knowledge of the subject. Smart questions foster a more engaged and supportive community and contribute to knowledge sharing, which will benefit everyone involved.