On a Problem Specification Template for Posts in the Help Forum

The Problem

In my observations of posts within the Help Forum, there is a worrying amount of posts whose authors don’t specify the problem they have in great enough detail. This can occur through a vague title, failure to mention critical aspects, failure to mention why it’s a failure in the first place, etc.

What this ends up doing is that more experienced users who wish to help end up having to talk back and forth with the posters, trying to figure out the actual problem they have before actually addressing it with possible approaches and solutions.

This is problematic for both sides of the equation as posters get vague answers / requests for problem clarification instead of possible approaches and solutions, and the experienced volunteers waste their precious time and effort trying to resolve their problem that may not even be a problem in retrospect.

And I think that I may have a partial solution to this problem.

The Partial Solution

There could be a standardized problem specification template that outlines and organized the problem a poster may have and details that the poster think is relevant to the problem. Here’s a rough idea of what it could look like:

“Specify the greater context where the problem arose in the first place.”

“Specify how this is or could be a problem.”

“Specify evidence that demonstrates the problem’s existence.” (Code snippets, Error logs, Server data, etc)

“What approaches/potential solutions have been taken and how effective and ineffective has each been?”

The Benefits of the Solution
Firstly, it would encourage posters to provide more details and context regarding their problem, assisting volunteers in narrowing down appropiate approaches/solutions.

Secondly, it would encourage posters to critically think about the actual problem they have. It’s Einstein who once said “If you can’t explain it simply, you don’t understand it well enough”. How are the posters supposed to fix their problem with new approaches and/or solutions if they don’t understand or can’t even explain said problem simply? If lucky, they may even be able to resolve the problem on their own, wasting none of their or the volunteers’ time and effort!

Finally, it would allow experienced volunteers to analyze the details regarding the evidence of the problem and determine if the problem is solvable, if the problem is a symptom of a more urgent problem, or if the problem isn’t really a problem.

Potential Drawbacks of the Solution
If the template is overly detailed, it may discourage potential posters from posting as it may give off the impression that posts are to be of a quality higher than they can reach/care for.

3 Likes

It is the same problem on all help forums, StackOverflow, etc. and as far as I know there is no solution. Especially here, the “Python Help” category (Python Help, formerly known as “Users” ) is kind of the catch-all category so you will find all kinds of posts, many of them are not actually asking for help.

We are not on StackOverflow. Over there there is clearly one top-level entry that is the question (all details are expected to be in this one post, no more, no less, with a minimal reproducible example), there is not much room for back and forth discussion on StackOverflow (asking for clarifications, etc.). While here I feel like this is the opposite, back and forth discussions are welcome (if not encouraged).

But in principle I agree with your proposal. If it is possible to have templates, we could try it. But then we should make sure to have one category where the template makes sense. As you can see in other posts, it is not entirely clear what is the scope of the Python Help category or what it should be:

3 Likes

Maybe instead of a template that “must” be followed, the wording should suggest to the user that, if they’re looking for help, they’re much more likely to get it if they follow the recommendations in the template, but are otherwise free to disregard them.

2 Likes

Yeah, Stackoverflow seems somewhat hostile especially to noobs trying to learn something, it’s my last resort and I don’t recommend it to anyone for technical issues. My questions and comments get downvoted to negative numbers sometimes and there is no explanation so there is no way for me to know what I did wrong.

Yes as a noob to Python I will ask seemingly dumb questions simply because… I’m new to Python. But I’m learning, and downvoting people does not help them learn, it drives them away discouraging them from learning.

There’s an electronics forum that is even more hostile than Stackexchange, it’s ONLY for full electronics engineers, not noobs. Noobs are quickly driven out by the toxic comments.

Yep. Dumb questions are how we learn :slight_smile:

1 Like

Yes, I definitely would not send a “noob trying to learn” ask a question on StackOverflow. I never saw StackOverflow as a place for this. To me the goal of StackOverflow was always “one canonical question and one canonical answer”, kind of like an FAQ. Questions that do not fit this mold get downvoted, answers that do not fit this mold get downvoted, that was always the expectation from my side, nothing personal in this. I am always quite surprised not more people understand that (sure their marketing material might say otherwise, but the way the website works and the community make it very clear, at least to me). [Toxic comments are a different topic.]

If you expect personalized technical assistance on StackOverflow, you run a very high risk of being very disappointed. There are other places for this, like here on discuss.python.org, or at least on Python Help (on other categories, it is debatable, and rightly so in my opinion, there are categories for “users” and categories for “makers”, but this is already discussed in other threads, some I linked above).

Sure, that sounds good to me.

Asking good questions is not trivial, it is not necessarily something one knows how to do, we can provide aids (templates) and learning material (links to resources). I am also fine if it takes 4 or 5 posts of back and forth discussion to clarify the actual scope of the question.

2 Likes