It might be a stupid question, but I always wondered (and was afraid to ask :)) why tags are written in lowercase whereas sometimes it's confusing and not really correct?

For example, IMHO, JComboBox is a better name than . The same about and Java.

Is there any specific reason why all tags are lower-cased? It might confuse some users, as I always correct people who write ArrayIndexOutOfBounds instead of ..

  • 3
    They are tags, not proper names. Why is Java better than [java], exactly? – Martijn Pieters Jan 15 '14 at 11:31
  • 3
    I'm no authority but I see 2 possible reasons: 1) To prevent case wars; 2) to prevent SEO issues with tags that differ only with their spelling. – Mołot Jan 15 '14 at 11:31
  • Imagine the tag edit wars if there was a conflict over how to capitalize a tag. Not to mention the UI pain to support such editing. – Martijn Pieters Jan 15 '14 at 11:32
  • 2
    @MartijnPieters But JComboBox is the right name for the JComboBox. For example, today someone posted a question about button that should have been Button.. Sometimes it's critical. I thought this might confuse some.. – Maroun Jan 15 '14 at 11:33
  • @ᴍarounᴍaroun I doubt it's ever critical. Neither of the examples you've suggested thus far are critical, in terms of tag capitalisation. I agree that question contents should be edited to correct capitalisation. – Duncan Jones Jan 15 '14 at 11:33
  • 1
    You can call Java however you want, but in the official website of their, it's written Java.. – Maroun Jan 15 '14 at 11:34
  • 3
    The lower case tags look rather bad in search results when they are put at the front of the title. I'd like to have proper cases for this, but it would add some considerable complexity – Mad Scientist Jan 15 '14 at 11:35
  • @ᴍarounᴍaroun: I think you need to have your humour detector looked into; Oded and I are illustrating why you might want to remove all possibility of case wars. Why have to discuss what the 'proper capitalisation' is, at all? We are using Java as an exaggerated example, but I'm sure we can pull out some real examples where the capitalisation is ambiguous. And what of two subjects that only differ in how they are capitalized? I can guarantee you people will fight over which project should be more important and have their capitalization reflected in the tag name. – Martijn Pieters Jan 15 '14 at 11:36
  • I think it's for uniform (e.g everything being lower case, rather than camelcase or anything different). – Albzi Jan 15 '14 at 11:37
  • 1
    @MartijnPieters This need to be discussed because it's simply not correct to write arrayindexoutofbounds.. I think it's better be named as it's right to write it.. I was just wondering, that's why I thought it deserve a discussion. – Maroun Jan 15 '14 at 11:39
  • @ᴍarounᴍaroun You seem to be talking about both tags and posts. By all means correct capitalisation in posts. – Duncan Jones Jan 15 '14 at 11:40
  • @ᴍarounᴍaroun: by all means, correct the spelling in the body of the question, but why should tags also follow this? – Martijn Pieters Jan 15 '14 at 11:42
  • @MartijnPieters For clarity, sometimes it's hard to read "illegalargumentexception". It's much more clearer if you read "IllegalArgumentException". – Maroun Jan 15 '14 at 11:48
  • 1
    @ᴍarounᴍaroun: I don't 'read' the tags as such; I use them to follow questions, but I don't care that much about readability there. I care about readability in the posts themselves, of course. Plus, I follow Python mostly, which doesn't suffer as much from overly long exception names (and the [python] community doesn't put exceptions into tags, on the whole). – Martijn Pieters Jan 15 '14 at 11:51

Lower-case tags have several advantages:

  • Prevents people accidentally creating two tags that differ only in capitalisation, whether intentional or otherwise.*

  • Prevents arguments over the correct capitalisation

  • Creates a consistent look and feel

I think for these reasons alone, it was sensible to opt for lower-case tags.

Note that correcting capitalisation in questions/answers is a good thing and should be encouraged (as part of a substantive, worthwhile edit).

* Of course there are other ways to achieve this (such as case-insensitive matching).

  • 3
    I'd assume that point 1 is resolved by matching tags case-insensitively. Which will only fuel point 2 (no, the RePoze project is more important than the rePoZe project, our capitalisation should be used for the tags!). – Martijn Pieters Jan 15 '14 at 11:41
  • 2
    The first argument is not necessarily valid, SE could implement proper capitalization but still disallow tags that differ only in case. I'm also not convinced that all lowercase is somehow more consistent than proper capitalization. – Mad Scientist Jan 15 '14 at 11:42
  • @MadScientist: Because you invite case wars as soon as there is any ambiguity over what 'proper capitalisation' construes. It's bad enough to have to deal with British English vs. American English sometimes. – Martijn Pieters Jan 15 '14 at 11:43
  • @MadScientist You (and Martijn) are both correct about point 1. It is a consequence of the decision to force lower case, but there are other ways to do so. – Duncan Jones Jan 15 '14 at 11:44
  • @MartijnPieters There are lots of aspects of tagging that you can fight endlessly about, capitalization is by far the least of the problematic areas. – Mad Scientist Jan 15 '14 at 11:45
  • 1
    @MadScientist: We could have a meta fight right now, about what is more likely to attract strife! – Martijn Pieters Jan 15 '14 at 11:46
  • 1
    Point 1 is solved by a unique functional index on the table and I disagree with point 3 because it's inconsistent with the correct spelling. The arguments however... – ben is uǝq backwards Jan 15 '14 at 12:56
  • @benisuǝqbackwards A system that allows only lower-case input resolves point 1, regardless of how it's really implemented under the covers, surely? Regarding point 3, I was referring to the look and feel of tags compared to one another; everything being lower-case creates a uniform appearance for a tag. – Duncan Jones Jan 15 '14 at 12:59
  • I work with databases a lot @Duncan. I'll argue with you on that forever so let's not start it here :-). The basic premise is that no system, save the database itself, can guarantee to always be the method of all alterations to the database. – ben is uǝq backwards Jan 15 '14 at 13:16
  • Thanks for the details @Duncan. That's what I thought.. – Maroun Jan 16 '14 at 7:57

You must log in to answer this question.

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