# Proposal: Remove discipline prefix from the Arxiv-style tags

I answered the Arxiv tags or not question so:

The current AA.BB.CCCCC tags are unwieldy —a defect in a question tagging scheme, not so bad in an article classification scheme— and AA is nearly always cs. The exceptions are, AFAICT, misclassifications.

If we simply dropped the AA. part off the tag, we would have a system that looks like the MO scheme, and is more pleasant. We'd also remove the tiresome math.lo.logic vs. cs.lo.logic issue.

The full Arxiv code can be given in the tag description.

Since the suggestion was well-received, I am promoting it to a retag request.

Two concrete examples: make [cs.cc.complexity-theory] a synonym of [cc.complexity-theory] and [cs.ds.data-structures] a synonym of [ds.data-structures]. There are currently 11 such "cs." prefixed tags.

This is tagged [feature-request], so vote up if you think this retagging should be done, down if you think it shouldn't.

• +1 I support that fully! As a side note, once moderators are selected, they have a tool to move entire tags over. That would be better than going in and correcting these by hand. Aug 25 '10 at 12:49
• I support this, as long as it's done by using moderator tools, not manually (so that we don't have hundreds of edits on our front page). Aug 25 '10 at 14:46
• I did an experimental merge of cs.cc.complexity-theory into cc.complexity theory. Also, I think that if you try to add cs.cc.complexity-theory, it will automatically change to cc.complexity-theory. I can do this for the rest as well - it doesn't appear to have changed front page status Sep 4 '10 at 2:39

## 3 Answers

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.

• I'm not sure if technically we can do this. once we have moderators we can try. In the interim, we can use the convention as you state, without worrying about making it mandatory. This suggestion seems to dominate Jukka's suggestion below as well. Aug 25 '10 at 23:05
• I definitly like some of Jukka's ideas, though. The use of terms from ArXiv is good (I currently have a proposal for a Software Engineering Stack Exchange - I intend to propose that the terms used for tagging come from the IEEE Software Engineering Body of Knowledge to provide a standard meaning for tags once it goes live) to ensure consistency. But what I'm trying to avoid with my idea is the fact that the full ArXiv tags are clumsy and noisy (the prefixes only add noise without significant amounts of understandable content). Aug 25 '10 at 23:10
• The main reason why I'd like to have some kind of noise is to be able to distinguish "top-level tags" from "other tags". Without the ArXiv prefixes (or something similar), if you are just browsing cstheory.stackexchange.com/tags?tab=name you can't really find top-level tags. Aug 25 '10 at 23:18
• I'm not sold that there should be a distinction between levels of tags. A tag is a tag, I think. Aug 25 '10 at 23:25
• @Jukka Suomela Although, I would be curious as to why you think that top-level tags are needed. Perhaps that explanation will get me to see why this is important. I just don't see a reason for it. Perhaps you can edit that into your answer to this question? Aug 25 '10 at 23:33
• @Thomas: 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. Aug 25 '10 at 23:50
• 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. Aug 25 '10 at 23:53
• On MO for example, 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. BTW Jukka's idea is essentialy what is done there too: the FAQ strongly recommends that you use at least one arxiv tag. Aug 26 '10 at 4:38
• 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. Aug 26 '10 at 8:10
• I'm all for gentle retagging as well - that's helped me in other places to learn how to tag. Aug 26 '10 at 15:51

While at it, we could try to come up with better names for the tags. Here is the current list of tags and their new names. Feel free to edit, but please keep in mind that tags can only have at most 24 characters. Old tags can be left as synonyms.

• cc.complexity-theory <- cs.cc.complexity-theory (Computational Complexity, cs.cc.complexity-theory in MO)
• cr.crypto-security <- cs.cr.crypto-security (Cryptography and Security)
• cg.comput-geometry <- cs.cg.comp-geom (Computational Geometry, cs.cg in MO)
• dc.distributed-comp <- cs.dc.distributed-comp (Distributed Computing)
• dc.parallel-comp <- parallelism (Parallel Computing)
• ds.data-structures <- cs.ds.data-structures, data-structures (Data Structures)
• ds.algorithms <- algorithms (Algorithms)
• fl.formal-languages <- cs.fl.formal-languages (Formal Languages and Automata Theory)
• gt.game-theory <- cs.gt.game-theory (Computer Science and Game Theory)
• lg.machine-learning <- cs.lg.learning (Machine Learning, cs.lg.learning in MO)
• lo.logic <- cs.lo.logic (Logic in Computer Science, lo.logic in MO is related)
• ne.neural-evol <- cs.ne.neural-evol (Neural and Evolutionary Computation)
• pl.programming-lang <- cs.pl.programming-lang (Programming Languages)

Again, here is the list of ArXiv/CORR subject classes.

And as it seems that people would like to keep the tags as simple as possible, I'd suggest that we also change:

• combinatorics <- co.combinatorics
• category-theory <- math.ct.category-theory

The idea would be that each post is tagged with at least one "dotted" ArXiv/CORR tag, and those would be our "top level" tags. Everything else is extra and kept as simple as possible.

• In the above list, please pay attention to the DS tag; it is tricky, I don't really know what would be the best solution. Aug 25 '10 at 22:06
• This is definitly better than the full ArXiv tags, and I can see this working. However, I'm thinking even chopping off everything but the plain English portion might be a benefit - using the well-defined ArXiv terms, but without the clutter of the prefixes. Also, there might be some benefit in actually breaking up some tags - "distributed-parallel" into "distributed" and "parallel" is an example. Aug 25 '10 at 22:44
• @Thomas: The advantage of keeping the "bb." topic prefix is that it makes it easy to see at a glance that the classification scheme is being used. Aug 26 '10 at 7:46
• I like co.combinatorics. I think we should keep the "BB." part. Aug 27 '10 at 10:46
• Jukka, in the case of DS, I think it may be best if we just make an exception: we can have two possible arxiv tags for DS, ds.algorithms and ds.data-structures. Personally I think the arxiv subject area is too coarse anyway: a data structures question is not necessarily an algorithms question, and vice-versa. Sep 4 '10 at 18:00
• @Ryan: I agree, sounds good. Sep 4 '10 at 18:58
• While at it, should we split some other tags, too? dc.distributed + dc.parallel perhaps? Sep 5 '10 at 9:21
• I think that's a good idea, so long as it makes sense for a TCS Q&A site. (In this case, the theory behind parallel computation is fairly disjoint from that of distributed computation, in my mind.) Sep 5 '10 at 18:05

I'd endorse this.