I asked a question (link) about the origin of a term which I see frequently while programming. It was just a personal curiosity, but this type of question seems in line with many other questions on this site.

It was downvoted and closed as opinion based in less than 5 hours.

I understand this site has had issues with low quality, easily googleable terminology/word origin questions in the past. However, per this and this meta answers, it appears to be an acceptable question. I genuinely apologise if that isn't the case, though I think it would be better to give input about how to improve before downvoting.

Question quality aside, how could it be "opinion based"? I'm asking about the origins of a term, which seems like something which could be answered objectively.

2 Answers 2


I cannot speak for the other close voters, but tell you why I voted as I did. "slugify" looks like a colloquial term for me, not some specific software engineering term.

You wrote "there are 'several slugify' libraries available for virtually every programming language". I googled this and what I found I would not call "libraries" - I would call this "a few different slugify functions in certain libraries or as code snippets". So when different library authors choose to use that term for a specific type of function, I think we had to ask them all, one by one, and each one probably having a different reason why they used that term. Without asking them all, we could only guess around - and the fact the term "slug" has a lot of different meanings in the english language does not make the situation any better. That's why I voted to close as "too opinionated". If I had to guess, I would say it is pretty likely that one author chose that term more or less by chance, in absence of a better idea, and others simply copied it.

My downvote came for two reasons: first, there are no references in your question, but for a question of this type, there definitely should be some. More important, I don't see a real chance for the question to be saved, so I applied the downvote for making it easier possible to delete the question without the help of a diamond mod. Please don't take that personal, this is just how the site's system work.

If someone of our other experts tells us I am wrong and there is a clear single origin of the term, I will be happy to revoke my votes.

  • the lack of citations is understandable, and I apologise. perhaps "virtually every" was an exaggeration. the context I had was with Python-slugify, which is used by many packages I interact with to test Unicode strings. while researching the question I could find packages for Rust, npm, PHP, C++, Java, C#, among others, with the same name, so I concluded this was a well established concept, since all those functions/libraries appear do roughly the same thing. yet I couldn't find a definitive answer on where that name came from.
    – Clara
    Commented Dec 8, 2022 at 9:33
  • also, I'm not sure I agree with the voting to close a question because you "think it looks like a colloquial term". isn't discerning things like that the whole point of the question? a large number of software engineering terms arise from colloquialisms: the question about the etymology of "semaphores" in programming, which I linked, serves as an example. I understand that that's how the site works, but as a user I find that penalizing these sorts of questions based on a hunch that they might be off topic a bit frustrating, as it doesn't leave enough time for someone to try to disprove that.
    – Clara
    Commented Dec 8, 2022 at 13:38

While I was not one of the down-voters, nor did I vote to close the question, I find it difficult to answer these types of questions from the perspective of the software development lifecycle or software design. The origins of buzzwords or technical terms are often unclear. Many times the word or phrase has multiple origins that are equally applicable. There is no canonical, authoritative source for grammar and meaning. Language is a tool developed by humans before "grammar" was even a word we defined.

More importantly, I consider the origins of meanings to words, phrases, or terms largely out of scope for the software development life cycle. This is the realm of language experts who have the knowledge to trace the etymology of words. Questions like this might be more on topic for English Language Learners & Usage. From their help center:

Questions on the following topics are welcomed here:

  • Word choice and usage
  • Grammar
  • Etymology (history of words’ development)
  • Dialect differences
  • Pronunciation (phonetics and phonology, dialectology)
  • Spelling and punctuation

(emphasis, mine)

Asking about the meaning of a word is outside the scope of the SDLC, because it does not focus on an engineering problem. It requires domain expertise in language usage and history that is not the typical area of expertise for software engineers. Furthermore, words like "slug" or "slugify" require domain expertise outside of software engineering. For example, the term "slug" probably originated in publishing, and more specifically in newspaper journalism. As such, questions like this are likely to have subjective answers, which makes this opinion-based.

  • To my understanding, the OP was not asking about the historical origins of the word in stake, but the origins of that usage in public software libraries. IMHO that is still not a good fit to the site, but not for the reasons you mentioned here.
    – Doc Brown
    Commented Dec 18, 2022 at 9:27
  • @DocBrown: that's true on the surface, but understanding the origins of the word allows you to understand it's usage in public software libraries. One follows the other. The root cause of the question is addressed with an English language-based answer. I see a lot of questions asking to explain some software term, but there is a fundamental misunderstanding of the words making up the term. Commented Dec 18, 2022 at 12:07

You must log in to answer this question.

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