Everywhere I look I see that whenever a site implement a tags system, they convert the tags names to lowercase. Even here in StackOverflow.
I was thinking about why is it so. Other than preventing duplication I can't think of a reason to use lowercase. I believe it hurts the practical aspect of the tags. People are used to read "IBM" not "ibm" and "C#" not "c#". It takes a bit more time for the user to understand whats the meaning of the tag, and I'm wondering if I should allow Capitals in my tags system, or is it a convention and I got it all wrong.
I want to hear your opinion.
As you already noticed, it prevents duplication. People are not consistent in their capitalization. Just look at the tags here and notice that people can't decide whether it's "objective-c", "objc" or "objectivec". Throw in "Objective-C", "Objective-c" and so on, and you'd have a real mess.
Note I'm not saying it would be impossible to deal with capitals, just difficult. For example, how do you know the correct capitalization? Just accept the first one entered as correct? Rely on moderators to clean up?
Ask an engineer the reason why something is a certain way, and they'll go to great lengths to figure it out. ;)
In this case, I'd be inclined to explain the prevalence of lowercase by a combination of laziness (programmers not willing to consider the points you bring up) and imitation (once you see it done a certain way on site S, you tend to reimplement it for site S' with similar assumptions).
It certainly seems feasible to store tags in such a way that case doesn't matter (for purposes of sorting, querying and so on) but display the tags with the capitalization originally intended.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With