I was doing some research on JavaEE. I came here. The first tag I used was 'j2ee'. I sifted through the questions, and learned a lot - including the fact that some of these questions are also tagged 'jee', 'javaee', and 'jee5'. Those tags lead to more questions. The web grows. I quickly find I could spend a lot of time on this. Some questions are almost redundant, but just had different tags.

I'm enough of an SO user to have expected this, but it can still be a pain. If I'm interested in Java Enterprise Edition questions, I might have to add four tags to see them all. If I ask a JavaEE-related question, I might have to add four tags to make sure I'm getting as many eyes as possible looking at it.

Some tags "include" others. Sort of. Obviously, some subjects subsume others: language-agnostic contains java contains j2ee contains ejb. But of course, not every question is best served by tagging it with everything up the subject hierarchy; most probably aren't.

Time passes quickly on the Internet. A programmer using one tag for his question one day may decide he preferred a different tag only a month later. A programmer seeking answers might search on one tag, but have preferred different tags earlier, had he only known. Questions probably don't get cleaned up and retagged.

This is no doubt an oft-considered issue for the SO devteam, not to mention anyone using tags this way. Clearly, the current system favors dynamic, laissez-faire creation, and the benefits of that should be obvious. The auto-completion and related tags features also help guide programmers to their desired pavilions in this gigantic convention center.

Well, given the above, what do we do about tags that are close enough in meaning that they're considered synonymous by enough of the SO userbase? Is it worthwhile to encourage users to use "One True Tag" if one seems evident? Is it worthwhile to auto-retag older questions to newer tags?

This question came from our site for professional and enthusiast programmers.

It's stupid to close this question when we already have the "stackoverflow" tag (associated to dozens of questions) that anyone can "ignore", if they want to. Also, this particular question about the problems of tagging is quite relevant to the design of software in general, I think.
–
Daniel DaranasFeb 23 '09 at 10:42

You could take it up with the admins, and the closing users, I suppose. I assumed there was a move to keep this stuff at uservoice, and I can see an argument for that, so I'm not worried.
–
Paul BrinkleyFeb 26 '09 at 18:16

I leave aside the use of different languages (in Flickr, "far" may mean "something a long distance away" to you - but if the author of the photo speaks Catalan, you'll probably find a lighthouse in it), because here we all use English.

The only way I can imagine to mitigate it is that the community defines equivalence between tags; so effectively "assertion" and "assertions" would be exactly the same, and this would happen automatically after, of course, the initial equivalence has been defined by somebody. But this would require a new feature in StackOverflow.

It would be interesting if at a higher moderation level tags could be linked in a hierarchy, and that hierarchy could be used when searching. So we get java->j2ee->ejb. This allows wider flexibility in searching, and would encourage maximum use of lowest-level tags.

I've personally retagged a couple of very small tags into larger ones. I feel like there should be some kind of incentive (rep or badge) to encourage people to do this. But I'm sure there'd be issues with potential abuse.

I also think it'd be nice to have tags be hierarchical, like Wikipedia's categories.