I just got an idea, but I'm not sure it's possible. It involves requiring certain tags on the main site (similar to how tags such as "discussion" are required on Meta).
The categories that compose Computer Science on ArXiv that appear to be within scope of TCS are:
- artificial-intelligence
- complexity
- computational-geometry
- game-theory
- vision
- security (instead of just cryptography, to include stenography without a long tag - and I would love to see some stego questions here.)
- data-structures
- algorithms
- databases
- discrete mathematics (this is probably off-topic and should be on Mathematics?)
- distributed-computing
- parallel-computing
- cluster-computing
- formal-languages / automata-theory (need to clean this up somehow, perhaps even splitting them into two tags, such as how I split data-structures and algorithms into two tags, even though they are a single ArXiv topic area)
- graphics
- information-retrieval
- information-theory
- multiagent-systems
- performance
- programming-languages
- evolutionary-computing
Note that a few off-topic ones probably slipped through. But the point is, these are the topic areas within ArXiv that are relevant to this site. Simply make it so that one or more of these tags is required. Drop the entire beginning portion and only go with the plain-English name. On the tag wiki for each one, provide the full ArXiv name (cs.XX.whatever) and link to the page for each one.
Also note that some have been broken up. "data-structures" and "algorithms" are separate tags, even though there is one arXiv section for both. I think they are separate enough to warrant being broken up here, but the tag wiki page for each would link to the same section or the ArXiv site.
I think this actually makes everyone happy.
(1) We are using standardized names presented in ArXiv that have well-defined meanings. This is good for categorizing content.
(2) The tags are in plain English, which will mean that people searching using the built-in search as well as coming from Google will see only the portion of the tag that is relevant to their query.
(3) The tags are short, simple, and beginner-friendly. I'm not an expert on any of these topics, but I can clearly define what most, if not all, of these areas encompass. I look at "cc.complexity-theory" and know what "complexity-theory" means, but I have no clue of the significance of "cc".
(4) We can be better assured that every question posted to TCS is actually on-topic. If it doesn't fall into one of the knowledge areas that is required, then the question is off-topic and belongs somewhere else. For example, if we didn't put discrete-mathematics on the required list, someone would have to take a look and try to attach another tag to it. Either they would succeed and it would be good or they wouldn't and then wouldn't be able to post it here without making up a tag. Even so, however, there might be subtopics within each of these areas that is off-topic, so that would need to be worked out.
To address some of the comments:
For filtering purposes. If you just take the top-level tags and mark some of them as "interesting" and some "ignored", you'll immediately have a very effective filter. If we have the policy that each question is tagged with at least one "top level tag", your filter should work pretty well. On the other hand, if we just have a large collection of tags that people can use and create however they want, maintaining your filter and keeping it effective (and spotting false positives/negatives) becomes a burden.
I don't think it matters if you have top-level tags for filtering. It's good to have very specific, well-defined tags that mean something specific and where many people know their meaning. Having ambiguous words/phrases/keywords as tags would be a problem, but it doesn't matter what the tag is as long as anyone can look at it and tell what it is.
In terms of the use of any tags - I would like to first point out Stack Overflow, Super User, and Server Fault. They allow for random tags, yet the users are able to find and filter based on their preferences. It all boils down to the fact that in a folksonomy, the tags and their meanings will eventually converge. You might be interested in reading The Complex Dynamics of Collaborative Tagging, Folksonomies: Tidying Up Tags?, and Clay Shirky's Ontology is Overrated. I can recommend a number of other papers on folksonomies and ontologies if you are interested, but the short story is that tagging needs to be more organic and less structured for it to develop meaning.
And regarding filters: this site only works if people can use it to get good answers from the experts. We should make the life of those who are looking for relevant questions that they could answer as easy as possible. With "top level tags", you can just mark your own field of expertise as "interesting" and then check cstheory.stackexchange.com/unanswered/tagged/?tab=mytags whenever you have time. Or subscribe to the relevant RSS feed.
Using plain English terms from a source would accomplish this as well. It doesn't matter if you use the IEEE Computer Science Keywords, ACM Categories, or the Computing Research Repository subject areas. As long as you have a community practice (either community enforced or by requiring at least one tag from a group of tags), people will be able to find things. It doesn't matter what that tag is. However, I personally feel that "complexity-theory" is much easier to manage than "cc.complexity-theory". It's more familiar to people who don't use/know ArXiv, but it uses the exact same subject name, allowing people who are interested in the ArXiv knowledge area of complexity theory to follow it.
I have a long list of 'uninteresting' tags so as to get rid of topics I don't care about. top level tagging helps me focus positively on stuff I do care about.
This is accomplished with any tagging system, given enough time (see the papers and articles I linked to in response to the first comment). It does help to have tags from Day 1 that are meaningful, see my response to the second comment.
There's a risk that required tags will be confusing for new users. I'm inclined to 'educate' new users, by retagging their questions, but this wouldn't work well if (i) users would be put off by having tags added, or (ii) the retagging would tend not to happen.
I think this is also a good idea, as long as the full ArXiv tags are not used. Like I've said many times, ArXiv tags are too unwieldy. The simplest, and best community-oriented approach (see any number of research reports on developing folksonomies) would be free tagging. However, that doesn't seem to be of interest to the community here.
As far as retagging goes, if the community doesn't edit posts and tags, then the community is failing and this Stack Exchange probably won't survive. If you aren't editing questions and answers to make them better (at least, where it is possible to make them better), and editing tags to make questions easier to find, then you are missing out on the point of how a Stack Exchange is supposed to work. If you aren't editing questions/answers because you don't want other people to edit your postings, then this isn't someplace you want to be since the system is designed to support the editing of posts.