Welcome to Codidact Meta!
Codidact Meta is the meta-discussion site for the Codidact community network and the Codidact software. Whether you have bug reports or feature requests, support questions or rule discussions that touch the whole network – this is the site for you.
Outline of what makes a high quality question
For a QA site to be good, it's important to have high-quality questions. The community is a great resource for guiding askers with the technical tools that CD provides. However, it is helpful for the community to have a mature understanding of what actually makes a good question.
I say "mature understanding" to emphasize that it's not so important for everyone to agree on the exact rules that define a good question. This is inherently subjective and pluralistic. However, if there are many different perspectives on what question is good, it is helpful for everyone to understand each perspective and where it comes from, even perspectives you don't personally agree with. If we're all more fluent with the different schools of thought on what makes a good question, we can do better job of voting, flagging and commenting on them. "Mature understanding" here means a good understanding of viewpoints that don't agree with you.
I think there are three pillars to this:
- Basics/low-level: Things like proper grammar, fixing typos, formatting code with backticks. These are usually not controversial, everyone knows them, and many guides about asking questions unduly focus on these points which IMO are (a) mostly obvious and (b) general writing rules so people already learn them from other domains (like elementary school). Importantly, basics are no guarantee: You can follow them perfectly and still ask a terrible question (eg. vague, hard to understand, poorly structured, confusing, off-topic, not useful). And at that, a very good question is not much impaired if you break the basic rules. Of course it's better to follow them, but IMO basics are orthogonal to the quality of the question (ie. the quality of what is being asked rather than how it's written).
- Method: These have to do with how the question was conceived. Was research done? Did the author attempt a solution themselves ("show your work"/"what have you tried")? Is the question original or plagiarized? Is it from an AI model? These are obviously very important to a good question, but not practical to judge on a pseudonymous online site. We can't demand always proof of what homework the asker did. IMO it is better to collect guidelines pertaining to method in a recommendation page ("Tips for high quality question") rather than using them as a evaluation rubric.
- Substance: The heart of what is actually being asked. Is the question about a specific instance, or the general situation? Does it fit with the scope of the community? Is it open ended, or are there constraints on the answer (eg. "how do I do X, but without using Y and Z"). Is the author confused about their own question (the atrociously named XY problem - note that being confused about the root problem does not necessarily indicate the question is low quality, when asking for help it is normal to be confused)? Is the question a composite of multiple questions (deliberately or unintentionally) or is it a single atomic question? Is it asking an objective thing, or subjective? How would the competing subjective answers be reconciled? Would an answer likely need to be too long?
Even one of these areas would be too much to cover in one answer. I intend this post as a starting point, and to:
- Establish whether the above assertion about the importance of a "mature understanding" being desirable is reasonable
- Establish that the three pillars as I described them are reasonable
- Create a reference for future questions that individually debate components of 2 and 3
So I would kindly suggest the answers stick to these points, and other matters (such as a comprehensive, detailed description of what makes a good question in your opinion) should be posted in separate posts.
I think one place where we can do a good job than other QA sites is providing better resources for asking better questions (both written guides, as well as more helpful feedback culture from regulars). StackOverflow does provide some help articles, and there are often meta discussions (which only the most dedicated regulars engage in and it's not very accessible to casual or new users). I think at some point, they also gave up, and decided that they will no longer teach but focus on opaquely punishing users who don't know better, and let them "somehow" figure out the rules on their own. I don't think this has worked (the result has been unnecessary narrowing of useful discussion and a feeling of "hostile and unfriendly userbase") and IMO Codidact is in a position to do better.