I have a question regarding my question: https://softwareengineering.stackexchange.com/questions/387226/how-to-phrase-problem-with-thread-work-balancing (10K link)

Screenshot of the (now deleted) question

With this question, I want to learn about the correct wording such that when I do further research I have the right vocabulary.

There are some votes to close the question and there are some downvotes. So my question here is:

  • What is wrong with the question?
  • If this is not the right place to ask about correct terminology, where is the right place to ask this kind of questions?

(And if this is not the right place to ask this question here then please tell me. Would be nice if you give me a hint so I can improve.)

2 Answers 2


Questions that ask about terminology are not automatically off topic, but asking them well is really difficult.

A couple of issues incl. references to various pieces of guidance have been discussed in: On the troubles of naming and terminology. Furthermore, relevant guidance has been collected in Why was my question closed as "Too Broad?" and Why was my question closed as "Primarily Opinion-Based?".

  • The crux of the problem with terminology questions is that real questions have answers – not opinions or ideas. Terminology questions are often like polls that have no wrong answers, only more popular and less popular responses. The Stack Exchange model is not a good fit for such polls.

  • Terminology questions may also have an XY-problem component: whereas the question asks for a name of a problem, the asker may actually be seeking a solution to their problem. Questions that try to solve concrete problems usually fare much better.

  • A minor objection is that the goal of Stack Exchange style Q&A is not primarily to help the asker, but to build a library of posts that helps future people with the same question. “Name this thing” questions are very difficult to find because they typically contain a vague, unsearchable problem description if you don't already know the descriptive term.

  • Terminology questions also tend to suffer from the problem that they are literally unanswerable: some things don't have names, at least not names that are widely accepted in the field. In theory “there is no name for this” could be a valid though disappointing answer, in practice such a question is likely to attract suggestions for made up names – see the bit about polls above.

To summarize guidance from the posts linked above (in particular this one), a good terminology question will

  • ask for the name of a well known concept
  • describe the context in which the name will be used, e.g. individual programming languages and problem domains might have unique terminology
    • for example, context could be provided by code snippets
  • describe acceptance criteria for the term (to avoid this from devolving into a poll)
  • list terms that you have thought of but discarded (why?)
    • this shows that you did prior research before asking
    • this also helps to clarify the concept you are asking about

Your question does fairly good on this, for example you do provide ample context. However, your question does not show prior research. You suggest terms like “thread balancing” but do not explain why they don't solve your problem. I think the implicit acceptance criterion is that you are not seeking any term that describes your problem, but a widely accepted term for this class of problems, for example a term used in scheduling theory textbooks.

I therefore agree that the question as written is primarily opinion based. I would suggest that you either

  • rephrase the question to explain clearly what kind of term you are seeking and why the terms you know so far are insufficient; or that you

  • ask a new design-level question about how the problem you are facing can be solved, i.e. the correct terminology might actually be irrelevant for you.

    If the question is not about design but about the correct use of some API or about debugging your system, then Stack Overflow would be the correct address. Your original SO question (with the terminology parts removed) actually does fairly well. It asks about ways to solve the problem but merely contains insufficient details as to which solution might be appropriate.


The problem with these questions is that, often, there is no agreed-upon terminology. What results is a lot of people posting their word or phase and then people voting up and down as if it was a popularity contest. This puts the question squarely into the realm of "primarily opinion based". Of course, there will often be someone who says "sorry - there's no widely accepted term for this" as an answer, which is correct, but not very helpful since it doesn't actually help the person asking or future visitors to the question.

In cases where you're trying to figure out the right terminology to use, the best thing to do is to talk to your stakeholders who will be consuming the information and try to agree on a vocabulary. Once you have some words, maybe search on those words and phrases. Try to see two things: (1) is anyone else using this term like I am and (2) is anyone else using this term in a very different way that may require me to add additional clarifying information. It may also be helpful to create a glossary that is shared among the stakeholders. Working with stakeholders instead of asking people on the Internet will probably yield a more useful solution.

  • We agreed on a vocabulary already but we wanted to do some research how other people would address the problem. But for doing reseach you would need to know the widely accepted termonology, the right search terms. As we did not find any useful information we concluded we don't know the right search terms. And then I started to post the questions. Mar 4, 2019 at 15:59

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .