Possible Duplicate:
Should language-specific questions contain the language name in the title?

Is there a set policy whether the programming language (or other context) should be part of the question title?

Example (look at the revision history): Is it safe to read an integer variable that's being concurrently modified without locking?

What do you think?

Update: OK, this was discussed more than a year ago in "Should language-specific questions contain the language name in the title?".

But there was no clear consensus. Perhaps we can reach consensus now?

  • my 2 cents worth: where appropriate, it should be allowed. Just search c# by itself and you will see many instances where c# in the title is appropriate imho. as a SO newbie, I'm still getting my feet wet ~~ if c# is to be banned from question titles, then I would hope that anything with c# as a tag part or body part or comment part would show up.
    – gerryLowry
    Mar 15, 2010 at 17:32
  • 1
    Mehrdad has a good, even-handed answer on the original question... In short, include it if makes sense as part of the title. OTOH, prefixing every title with the name of every language relevant to the question just duplicates the tagging system, badly. This goes back to the rule of thumb that a title should state the question itself in brief, so as not to require readers to load the entire thing if the topic doesn't interest them.
    – Shog9
    Mar 15, 2010 at 17:39

4 Answers 4


As stated in the comments of that edit, it's not so much the language name being in the title, it's the fact that it's clearly a tag that's been crammed into a field intended for a plain english sentence. It's a title field, not a denormalized database dumping ground.

When a user sees

C++: is it safe to read an integer variable that's being concurrently modified without locking?

They read it as

[C++] is it safe to read an integer variable that's being concurrently modified without locking?

Since SO already has a tagging system (which is tied to many things), it is redundent to be including a poor man's tag in the title. Same goes for users who decides to edit their question titles to say "[Solved]" after an acceptable answer is posted (double points if they don't actually mark the answer as accepted, triple if they post a "reply" thanking for the correct answer in the form of another answer).

I think if the question sounds overly broad (keywords match several unrelated languages) you could easily work the language/API into the text of the question:

Is it safe to read an integer in C++ if it's being concurrently modified without locking?


I think tags are used to make search more easy. But I personally think it is not bad to name the program language in the title. It is more clear to me, when it is named in the title. I always look first at the title before I look at the tags.

  • FWIW, this would be my preference too, where appropriate. I like to see useful information in the title. of course useful to me is not necessarily useful to someone else. YMMV
    – gerryLowry
    Mar 15, 2010 at 17:36

Well, if so, he arguably should have removed "concurrently" from the title, since the question is tagged "concurrency". I wouldn't worry about it too much.

I tend to remove the "PHP" from things like "PHP: How do I fetch a foo from a bar?". Opinions may differ though.


Not only do I not believe the language pseudo-tags belong in the title, I often edit them out when they're not relevant.

I'll change a question like "C#: How do I use the OpenFileDialog?" to "How do I use the Winforms OpenFileDialog?".

My rule of thumb has been that if the question and answers would be the same if the language were different, then remove the language and try to get ".NET" into the title in a good place.

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