Kartoza - A Beginner's Guide to Asking Good Questions on StackExchange
Every software beginner eventually runs into a problem that Google can't help with. For moments like these, Ian Turton gave a great guide on how to get a good response on StackExchange.
To get a good response or answer on StackExchange sites, one must ask a good question. This not only applies to StackExchange sites but also to any other Q&A forums, lists or sites e.g. StackOverflow.
What is a good question? 'Good' is such a simple yet vague term. The checklist below provides a few criteria by which to measure your question to determine if it is a 'good' question. The example question I will use to show these criteria comes from the Geographic Information Systems StackExchange site under questions tagged [open-data-cube].
☐ Has this question been asked before?
Check if your question has been asked before. This can be done using the site search bar or using Google search (or using your web search engine of choice). A quick Google search of our example question brings up the following results:
As seen from above results, the question is not a duplicate, therefore we can proceed to ask it. If you find your question has been asked before, please attempt to implement the solutions provided.
☐ Have you provided a enough information for a user to replicate the problem?
For someone to find a solution to the problem, they need to know what the actual problem is and how it occurred. This means you need to include in your question as many details as possible about what you were trying to do when the problem occurred. Depending on the problem, this information can include:
- The operating system you're running the software on
- The programming language, package and package version you are using
- The code you were trying to run
- What the software or package thinks is going on. This can be found in the logs printed on screen or in the logfile or error message
When adding in this information to your question, keep in mind that you should not paste in pictures of text; ensure you write or paste text as the words in an image are not searchable. In the example question, we also are able to copy and paste the code provided to test it and see where the problem occurs, which would not be possible if the question only included a picture of the code.
If your question has been asked before but the solutions or answers did not work or if you have tried solutions from related questions, include information on what you tried , why that did not fix your issue and add links to the relevant posts or questions.
☐ Have you indicated the end goal?
In your question, ensure you communicate the end goal or purpose of what you are trying to do. This provides context for others when coming up with answers/solutions. In our example question, the end goal is to compare the values of two measurement variables of an xarray.
☐ Have you added an appropriate title to your question?
The title of your question should summarise your problem concisely. The title is the first thing readers see about your question so make it count! If your title is not interesting then they won't read the rest of the question.
☐ Have you added all the relevant tags to your question?
Tags help people locate your question. The more visible your question is to others the higher your chances of getting an answer.
☐ Have you proofread your question before posting it?
Always proofread your question before posting. You want to make a good impression on potential answerers.
The question asked provided enough information to be able to replicate the problem and for a solution to be provided :
here. If the solution meets the user's needs, then the answer will be accepted.
Other notes to keep in mind when posting a question in a forum:
- No spam
- Read the local rules and guidelines
- Read the code of conduct for the site and adhere to it
- Respond to feedback. Note that this checklist only provides a starting point to ask a good question. Feedback from the community will go further in helping you make your question good
- If you get an answer that works, accept it
- Example question - https://gis.stackexchange.com/questions/428666/plotting-open-data-cube-xarray-data-with-two-or-more-measurement-parameters-in-t
- How to get a good response on stackexchange - https://www.ianturton.com/talks/foss4g2022/slides.pdf
- Stack Overflow Help Centre - https://stackoverflow.com/help/how-to-ask
- Meta Stack Exchange Help Centre - https://meta.stackexchange.com/help/how-to-ask