Note: the eventual outcome of this discussion involved dropping this particular off-topic reason, along with other changes. See: Recent changes to close reasons on Stack Overflow —Shog
I was using the reason "demonstrate a minimal understanding" myself quite frequently, but the more I review, the more I have doubts about it and I think this reason can either be dropped entirely or at least rephrased, so I started to use "problems with code you've written must describe the specific problem" instead:
Questions asking for code must demonstrate a minimal understanding of the problem being solved.
So the poster has posted some description, maybe even a snippet of code and in his mind that already proves that he has that minimal understanding required. After all he described the problem and what he tried to solve. So telling him that he lacks that understanding is rather rude, and from the posters point of view doesn't even apply. What both version of the reason not emphasize is that a description of a problem is not various versions of
it doesn't work
but that we rather mean really specific details (see below). I can often see in the reopen review queue that the "improved" version just includes a more verbatim description, while what usually would be expected is some specific error message, a trace or a log, or whatever applies.
Then it continues with:
Include attempted solutions, why they didn't work, and the expected results. See also: Stack Overflow question checklist
comparing it to:
problems with code you've written must describe the specific problem — and include valid code to reproduce it — in the question itself. See SSCCE.org for guidance.
Which says essentially the same, only in more detail.
So the "minimum understanding" reason is IMO a more rude version of the reason telling the user that an SSCCE is missing.
The intent of giving this reason is to tell the user that he needs to give exact details to be able to help him, so IMO a checklist would be much better. Something like:
Your question was closed because it may not provide enough details. Things you can do to improve your question to get an answer include:
- Format the code in a way that makes it readable and easily understandable.
- Provide the smallest working sample of code demonstrating the problem (link to SSCCE)
- Include your input and output.
- If applicable provide logs (i.e. Android debugging log, stack trace, etc.).
- If applicable provide the exact error messages (compiler, etc.).
And something like this should be best included already in the banner that appears when a question is closed instead of being hidden in some pages you often enough have to actively looking for.
It might be helpful to adjust this, based on the tags or close reason, as I realize that I'm more focused on the programming area, and the above list may not apply to other areas of SO.
Another thing I forgot to mention (but wanted to) is this:
Questions asking for code
Is IMO essentially an invitation of the type of questions
I have a problem, can you provide the solution? (with an optional please)
Questions concerning problems with code you've written
puts at least some emphasis on the fact that the poster has to put some effort himself in trying to solve the problem by providing the code which he used to attempt the solution.