# Is “theoretical” computer science too narrow?

The CS Theory Stack Exchange is humming along nicely. It's a terrific, robust, and growing community that is clearly making an increasing contribution to the state of CS Theory research.

Something we keep thinking about, though, in the context of the entire Stack Exchange network, is how broad a Stack Exchange site should be. I blogged about this a little bit here:

So: the right size might be somewhere around the size of a university department. Somehow, the cultural anthropologists don’t mind sharing a building with the physical anthropologists, and when they both find themselves at the Yale-Harvard football game, you can bet that they’ll sit together and find something anthropological to talk about. Similarly, at Stack Overflow, the Java Entity Bean programmers at insurance companies don’t mind all the iPhone developers asking Objective C questions about the horrible, horrible game they’re working on. Heck, they might become iPhone developers one day. And they both share the humiliation of not being able to fix their uncle’s virus-infested Windows XP machine when they’re home for Thanksgiving.

So that leads to the obvious question... is this site too narrow? I don't know of many universities that have a Theoretical Computer Science department; they all have Computer Science departments and the algorithms purists don't seem to mind having Friday tea with the computer vision geeks. And the idea of meeting somebody who is working on AI is, it turns out, not entirely too horrible to contemplate.

I'm concerned that there are non-theoretical aspects of Computer Science research that don't have a home right now. If you look around Area51 you'll see proposals for crpytography, operating systems, compilers, cognitive science, numerical modeling, computer vision, bioinformatics, history of computers, and a lot of other fields that aren't quite reaching critical mass. We had an AI site that failed to ignite due to a lack of actual AI researchers.

I'm not saying all of those are on topic, but if a university had, say, two professors interested in cognitive science, I'm pretty sure they'd just stick them into the CS department and nobody would think that was strange or upsetting or crashing the party.

Right now, though, I see researchers all over the computer science department that don't really have a place to participate, and the idea of making dozens of thin little sites to cover every possible ACM SIG strikes me as ignoring one of the great reasons that Stack Overflow succeeded in the first place: because we brought together all programmers to talk about code, and we created a reliable and robust tagging system so that you could quickly find the topics and people that you cared about, and because nobody minded (and many people enjoyed) the occasional brushing-of-shoulders with people who shared the same values but worked in different technologies.

Can we do something here? I think that sticking to research-level conversation is a great common denominator, but there are an awful lot of interesting topics that are excluded right now which could really use a home. See, for example, arXiv's idea about what constitutes "computer science":

Artificial Intelligence; Computation and Language; Computational Complexity; Computational Engineering, Finance, and Science; Computational Geometry; Computer Science and Game Theory; Computer Vision and Pattern Recognition; Computers and Society; Cryptography and Security; Data Structures and Algorithms; Databases; Digital Libraries; Discrete Mathematics; Distributed, Parallel, and Cluster Computing; Emerging Technologies; Formal Languages and Automata Theory; General Literature; Graphics; Hardware Architecture; Human-Computer Interaction; Information Retrieval; Information Theory; Learning; Logic in Computer Science; Mathematical Software; Multiagent Systems; Multimedia; Networking and Internet Architecture; Neural and Evolutionary Computing; Numerical Analysis; Operating Systems; Other Computer Science; Performance; Programming Languages; Robotics; Social and Information Networks; Software Engineering; Sound; Symbolic Computation; Systems and Control

Some of that stuff is already on topic here, but a lot of it is sadly homeless in the Stack Exchange network.

My belief is that broadening this site to "computer science" and allowing discussion on any research-level topic that fits in one of the arXiv categories of Computer Science (and possibly even using those categories as tags) would make this site grow quickly into a much larger and stronger resource that attracts people in computer science departments around the world, rather than a thinner site that attempts to stitch together just the purely theoretical disciplines. Of course through the use of tags and our tag following feature, every participant could define their own filtered view of what kinds of topics they are interested in following, but if you want to reach outside of your narrow research interest once in a while there will be lots of other interesting stuff going on here too. And the opportunity to connect, even accidentally, with researchers who are ostensibly working outside of purely theoretical computer science but might, nonetheless, face the same types of problems seems like too good an opportunity to pass up.

What do you think?

• +1 for raising this question. I have been wondering the same thing but too lazy to really start a discussion about it. (But this +1 does not imply that I agree to broadening the scope.) – Tsuyoshi Ito Feb 9 '11 at 16:49
• I say yes but nothing really constructive to add so just putting a comment and an upvote. – jcolebrand Feb 9 '11 at 17:02
• My main question is whether the site should be broader in a horizontal direction (allowing more research level topics) or vertical direction (allowing both research and more basic level questions). The same problem applies to Physics, Math and probably just about any scientific topic. – Ivo Flipse Feb 9 '11 at 17:40
• @Ivo, that is completely out of question AFAIK. We have discussed this before several times and there is a very strong opinion that this site should aim at research-level questions. I don't understand the problem with having a research-level site and a general level site (if it is attractive enough). MO/Math.SE model is working well and neither side complains about it. – Kaveh Feb 9 '11 at 18:04
• AI is an example of the problem. Every group of research level users want their own site, but not all of them will succeed because there aren't enough experts to carry the site. Regardless, SO get's 1200 questions/day and users are perfectly capable of finding questions they like. Why would researchers be any different? – Ivo Flipse Feb 9 '11 at 18:19
• This is a not-unreasonable idea, but the same logic suggests merging CS Theory and MathOverflow -- and there would be a greater commonality of interests from that merger. – Neel Krishnaswami Feb 9 '11 at 18:35
• Clearly there's potential benefit and cost. The benefit would be that we'd have more questions and participation. The cost is that the new content wouldn't interest us. A good way to judge whether this is a good idea is to imagine how often the typical user of this site would read / answer questions on memory management, context switching, or image acquisition. I also wonder whether a systems researcher would be interested in strange complexity classes. I certainly have research interests outside theory, but lean toward thinking separate SE sites are best. – Lev Reyzin Feb 9 '11 at 23:07
• people from other CS field can ask questions. In fact AI questions are in general along the same lines of CS theory, and they've been very welcomed in the site. For example, we had some questions on genetic algorithms, ant colony, etc. Everybody wants to know about algorithms, which is at the heart of everything in CS. – Marcos Villagra Feb 9 '11 at 23:14
• @Ivo Flipse, the point is that it is probable that in that case this site might not function well anymore. And the same logic suggests merging SuperUser, ServerFault, and StackOverflow. And even more, why not have just a single site for all from cooking to atheism to .Net programming. – Kaveh Feb 9 '11 at 23:40
• The problem is that you guys have aren't even near the scale of those sites you are drawing an analogy with. Furthermore, you're following a bad precedent (the Math guys) for splitting communities up into elitist groups. Yes, sites are built around experts, but does this mean Cooking was only meant for chefs? Or that only successful game developers are allowed to ask questions on Game Dev? No. What get's decided here influences future sites and might create problems for future communities. – Ivo Flipse Feb 10 '11 at 0:40
• Of that (quite overly broad) Arxiv topics list, somewhere around 1/3 - 1/2 would in fact be on topic, if focused on theoretical concerns. Theory doesn't just mean combinatorics, complexity, algorithms and automata theory. It includes programming language theory, database theory, distributed systems theory, etc. The issue isn't a narrow focus: CS Theory is quite broad. The issue is attracting and engaging the larger theory communities. – Mark Reitblatt Feb 10 '11 at 1:07
• Ivo, actually, you keep claiming what works on bigger sites would work here, too. – Raphael Feb 10 '11 at 17:41
• @Joel +1 for Mark's comment. Here is a list of areas within TCS: graph theory (algebraic, extremal, topological), combinatorics, algorithms(approximation, online, randomized,..), automata, complexity, cryptography, coding theory, models of computation, learning theory, quantum computing, computational geometry, program analysis & logic. There are several researchers working in each of these sub-fields. The question to think about is: Why are they not on Theory stack exchange(yet)? – Jagadish Feb 13 '11 at 4:38
• Hypothesis: the "correct" field width for a SE site is inversely proportional to the average complexity of the questions in it. The more complex the questions, the narrower the field should be. In SO the questions are relatively simple so it's fine for the field to be wide. In TCS the questions are pretty complex, so the field should be narrower. The argument for this hypothesis is: if it takes me a lot of effort to even understand a typical question, then the higher the chance the question turns out to be irrelevant, the more likely it is I'm not going to bother trying to figure it out – mobius dumpling May 4 '14 at 13:54
• fyi Computer Science has been created since this question was asked and basically covers more general CS areas. – vzn May 13 '14 at 15:23

sheesh. I go offline for 6 hours and possibly the most interesting question on meta shows up.

I think firstly that it's a tribute to the community here that Joel has even raised this question: it makes me feel that we're doing something right enough that he'd like to expand the scope.

I'm skeptical about the likelihood of success for an expanded CS-level version of this site. Part of my skepticism is because of things I don't know and could be wrong about, and part of it is things I have experience with.

The major part of Joel's argument is that IRL, there aren't theoryCS departments, and so it's not unnatural to have generic CS departments here. I think that's exactly the wrong way of looking at the value of such sites. University departments are market-driven: they want to provide a generic-enough service to attract a large number of "customers", while not watering down their mandate so much that they lose definition. They are also slow-moving lumbering beasts, so it takes a long time for them to evolve, and entrenched interests often prevent true change from coming.

But research communities form transversally: representatives of the community within departments meet up with each other, and as a lone theoretician, I can tell you that I find MUCH more community at conferences, and here, than in my home department. I think theoreticians would LOVE to have a theoryCS-only department (otherwise known as Princeton :)), but since that will never happen in the university environment, we are ecstatic to have it here. I would suspect this to be true for other subdisciplines in CS as well.

Why isn't this the case in math ? it's because all mathematicians speak the same language and have the same overarching goals: to understand mathematical structures. CS subdisciplines don't have this common language: there are the electrical engineers, the software hackers, the AI researchers, the graphics/imaging folks, and then the mathematically minded theoryCS people. In fact, CS departments are making moves towards splits: witness Georgia Tech and CMU, for example.

I think we could be a lot broader, and we need to work on that. But we have to be broader within theory. As Sylvain, Dave and Neel have argued, we need more theory B (logic, formal methods, programming languages). We also need more of the active researchers to show up here. I know many colleagues IRL who aren't here, and they should be. That's where I'd want to spend my efforts to make a community that I'd enjoy more.

Finally, an argument that Joel makes regarding SO is that even if the communities are largely disjoint, the occasional serendipitous connection achieved from a merge might be worth it at little cost. I see how this happens on SO, and it might work here. However, there are many features of the site (most importantly reputation and the associated power that comes with it) that are global, and can easily get swamped by a few high popularity groups. A personal example: while I'm fairly active on MO, I prefer to spend my time here, because only a tiny fraction of the questions on MO are within my areas of expertise, and even though I've set up elaborate tagging filters, most of the first few pages of MO are not relevant to me. I fear that happening here too.

• Very good point about leaving RL structures behind deliberately. – Raphael Feb 9 '11 at 23:46
• While I agree with most of what you said, I fail to understand that if you get to flourish here, why it wouldn't have been possible if these same questions were part of a larger site. Everyone here's talking like for some reason, users will stop asking their questions. If SO proves anything, then it's that that is not true – Ivo Flipse Feb 10 '11 at 0:12
• @Ivo, there are subtle differences between the aims and practices of a community like SO, and one like MO. Andrew Stacey has written a good article on this topic that I highly recommend: math.ntnu.no/~stacey/CountingOnMyFingers/MOversusSO.html – Suresh Venkat Feb 10 '11 at 1:40
• Further, I am absolutely horrified whenever I visit Stackoverflow: it's a total zoo as far as I am concerned. I even tried tracking the algorithms+math tags to see if there was anything of interest, but got bored rather quickly. One of the reasons (I think) this site has worked so far is that the people coming here expect to both give and receive knowledge and expertise from others at a similar level. If they have to wade through pages and pages of unrelated stuff, then that isn't going to happen. – Suresh Venkat Feb 10 '11 at 1:42
• (sorry to go on like this). What I believe is a fallacy in your analogy to SO is this: SO is a site for programmers: people brought together by a common theme. Computer Science has many different themes that only co-exist uneasily (see my answer) – Suresh Venkat Feb 10 '11 at 1:44
• I totally agree on the part of being as a lone theoretician. In my own department, even finding a student who is interested in pure theory is really hard. I never feel so comfortable and community like here. Not all universities have strong theory background, and this site a valuable source for not only experts but also for students who are interested in theory but cannot find people to discuss to. – Hsien-Chih Chang 張顯之 Feb 10 '11 at 5:10
• Really great point about building different internet communities than real life ones! – arnab Feb 10 '11 at 11:09
• Ivo, one reason why we flourish seems to be that we understand each other (for the most time). I do not know about your background, but I think you do not quite get the extent of difference in language and methods inside CS. Compare mathematicians and economists to get an idea for that. – Raphael Feb 10 '11 at 17:46
• The equivalent in Stack Overflow might be CSS/HTML coders vs. database developers vs. C developers vs. Game developers vs. UI designers. I think it's easy to emphasize the differences and talk about how you have nothing in common with that person over there, but that doesn't necessarily mean that it's not beneficial to co-exist in one Stack Exchange. – Joel Spolsky Feb 10 '11 at 19:05
• It doesn't necessarily mean that: and in an ideal world we'd ALL talk to each other more. But 90% of our time is spent in our little play areas, and there's nothing wrong with that. Specialization is a maligned but needed aspect of doing research at the highest levels, and the costs of forcing communication across disciplines is not always outweighed by the few serendipitous insights. I'll emphasize again. CS is really an unnatural discipline and anyone in a CS department sees this regularly – Suresh Venkat Feb 10 '11 at 21:26
• I think it is perhaps worth noting that TCS is much closer to mathematics than to what is usually taught as computer science at an undergraduate level. As far as I can tell the majority of TCS researchers seem to come from a maths background, so the distinction is much sharper than the example given by @Joel. – Joe Fitzsimons Feb 16 '11 at 12:04

Clearly there is potential benefit and potential cost to Joel's proposal. The benefit would be that we're exposed to more questions and have larger participation. The cost is that the site might fill with all sorts of questions that don't interest us and we would get lost in the flood.

A good way to judge these factors is to imagine how often the typical user of this site would read / answer questions on memory management, context switching, or image acquisition. We could also try to imagine whether a systems researcher would be interested in strange complexity classes.

My feeling is that the cost would outweigh the benefit. However, it wouldn't have to be that way if the stackexchange software were more flexible!

If you think about a CS department, while all areas of CS are covered, there are separate research groups, labs, etc. We don't all go to each others' talks because, frankly, not all talks are interesting to everyone. So if we structured this more like the CS department in the analogy, I would be all for it.

Here is an idea:

I think it would be great to have a CS stackexchange site that had multiple "forums" like cstheory. The membership could be shared. The reputation points could transfer across the forums. But each site should have its own homepage which featured only its own questions - tags and filters are not nearly enough. Perhaps the featured bounty questions could be shared across forums, as could questions with very high scores. That way, we could see what exciting things are happening in the other fields and would be tempted to occasionally browse the other forums without their questions clogging the theory ones. This would increase the user base as users from all the forums would occasionally do some browsing and answering each others' questions.

However, I see no way of implementing this idea in the current software. Stackexchange clearly sees the value of combining the various fields because their membership and viewership would grow. So they would have to make it happen by making their software be flexible enough.

Also, of course, the community would have to think it's a good idea :)

• Now that's a constructive suggestion to go forward. – Suresh Venkat Feb 10 '11 at 23:05
• A really interesting suggestion. I like that. – Hsien-Chih Chang 張顯之 Feb 11 '11 at 1:52
• Marginally related: Wikipedia has a (probably not well-known) feature called “portal,” whose purpose as I understand it is to serve as an alternative top page for a specific topic. See e.g. the portal for computer science. I do not think that they are currently successful in building it really as an alternative top page, but I find it an interesting attempt. – Tsuyoshi Ito Feb 11 '11 at 22:55
• I like this idea. :) – Aaron Sterling Feb 12 '11 at 1:30
• Good idea. This could be as simple as an additional tab across the "top", offering access to the beginner forum. – Dave Clarke Feb 13 '11 at 7:29
• beginner forum? Are we talking about the same idea? – Lev Reyzin Feb 13 '11 at 14:57
• oh i see - you mean we could have one of the forums, in addition to forums for different fields, be a beginner one? that would work too. – Lev Reyzin Feb 13 '11 at 16:19
• I agree, you finished most of the thoughts I had started having while reading and then some :) – Garet Claborn Mar 1 '11 at 8:43

Moving in this direction would be contrary to early Meta discussions, and discussions that preceded commitment, for that matter. It is also a genie that could never be put back in the bottle. Nothing is preventing anyone, CS professor or otherwise, from asking a research-level question about theoretical computer science, as things currently stand.

If this change is implemented, I will log in significantly less, because the discussions will not be at the current level that interests and challenges me.

Why remove the theoretical focus? Theory is marginalized enough in CS as it is.

I support the objective of constructing a site for computer science theorists, broadly defined (and, as a practical matter, defined by moderator action and Meta discussion), to share research knowledge with themselves, and with anyone else who wishes to participate.

• I agree wholeheartedly. We do need more numbers, that's for sure; not by diluting content, but by attracting more members. – Dave Clarke Feb 9 '11 at 20:27
• If this change is implemented, I will log in significantly less, because the discussions will not be at the current level that interests and challenges me. Why do you expect the current users to no longer ask the same questions? Again, the parallel with Stack Overflow: just because there's other topics doesn't mean your topic doesn't get it's share of the attention. – Ivo Flipse Feb 10 '11 at 0:04
• @Ivo Flipse, I remind you that we could already be part of MO, we already have the experience of being part of a too big site to some extent, and we decided to start a site for cstheory. I think the SO/SF/SU are quite different from scientific research, we mention MO model because you and others from those sites keep mentioning SO/SF/SU model. Please also read my comment under Tsuyoshi's answer. – Kaveh Feb 10 '11 at 1:32
• "Why do you expect the current users to no longer ask the same questions?" I would stop visiting the site for the same reasons I stopped visiting SO: the signal-to-noise ratio is too high on SO. (When I say noise', I mean relative to my interests.) In fact, I know B people not visiting this site because of the low SNR relative to their interests. Dropping "theory" would only make things worse. – Radu GRIGore Feb 10 '11 at 16:43
• "just because there's other topics doesn't mean your topic doesn't get it's share of the attention" It has already been said by others that this is not the case. Once an area becomes underrepresented, questions hardly ever stay visible. Examples were SO, MO, TeX. I experienced it myself on SO: Questions typically get attention for a few hours. If you have no (good) answer by then, you might as well give up. – Raphael Feb 10 '11 at 17:37

If you judge by conferences (and not university departments), then Theoretical Computer Science is the natural community. We have the theoretical computer science conferences FOCS, STOC, ICALP, but there's no all-computer-science conference. There are big math conferences (internationally, every four years; in the U.S., every January), and big physics conferences (in the U.S., in March and April), but not CS.

• Actually, there are computer science multi-conferences, a sort of catch all, which are total junk quality-wise. This phenomenon we do not wish to replicate here. – Dave Clarke Feb 12 '11 at 10:05
• I think you are overstating the lack of umbrella venues: yes, they are less common. And @Dave, I doubt the ACM would like to think FCRC is total junk. acm.org/fcrc – András Salamon Feb 18 '11 at 21:28
• The FCRC isn't really a conference; it's a federated bundle of conferences formed to address the lack of an all-computer science conference. It's a great idea, and quite successful, but as an umbrella venue it just doesn't come close to comparing with the Joint Meetings of the Math Societies, the International Congress of Mathematicians, or the APS March and April meetings. – Peter Shor Feb 18 '11 at 21:56

I agree with many answers here. In brief:

• It works. Let's not try to fix it.

Some opinions:

• Not everyone agrees with the premise that StackOverflow is exemplary and that all other sides should follow its model. I find its huge volume of traffic exhausting and daunting. It is too fast-paced for my taste. Questions are asked, very quickly answered, and then forgotten. It might work fairly well for technical programming-related questions, but it is not necessarily a model that I would like to try with theoretical research problems. I think that reasonably low volume is an important feature of this site.

• I think that this site is too narrow, but it should expand the scope within TCS, not outside TCS. There are subareas of TCS that are virtually nonexistent here.

• Universities should have TCS departments (and some universities do have TCS departments). As Suresh pointed out, CS departments mix people who don't share a common language, and in practice, it does not make that much sense.

• “It works. Let’s not try to fix it.” I was tempted to write the same thing, but I do not think that that is the correct response to Joel’s proposal. His point is that the Area 51 proposals on many CS fields other than TCS are currently suffering from low volume. From the viewpoint of the supporters of those proposals, things are not currently working. The question is whether broadening the scope of our site is a correct solution to it or not. – Tsuyoshi Ito Feb 10 '11 at 2:12
• @Tsuyoshi, I think the problem is that researchers are quite different from programmers, they have a different culture. It is very difficult to get them to use new technologies, most will not use anything other than email (and some don't even use it, you know who I mean). So far we haven't been able to even get enough Theory B researchers on the site, so including other groups doesn't make that much sense in that respect, attracting researchers is not easy. Contrary to that we might use researcher we have got right now because of lack of focus. – Kaveh Feb 10 '11 at 3:00
• Seeing a system's question once in a while would be OK, but more than that I am not sure I would like it. Right now cstheory is like a community that you can follow what is going on to some extend and like Jukka I like it, it is not just a Q&A site where random people just want answers to their questions, there is a real sense of a community here. I think we should be very careful about making a decision. I don't think there is hurry, SE people can certainly wait for a week or two, so I think each of us should think more about it and discuss the possible consequences of extending to all CS. – Kaveh Feb 10 '11 at 3:02
• @Kaveh: I cannot see the point. If you are replying to my answer, please comment there. (more) – Tsuyoshi Ito Feb 10 '11 at 3:23
• @Kaveh: (cont’d) If you are replying to my comment to Jukka’s answer, I did not argue here that broadening the scope of our site is the right solution. Jukka said, “it’s working.” I opposed to this. There is a problem from the viewpoint of the supporters of Area 51 proposals in subfields of CS, and Joel is trying to solve it by expanding the scope of our site. Even if we do not expand the scope, we should recognize the problem and decide that the expansion of the scope of our site is not the right solution, rather than ignoring the problem. – Tsuyoshi Ito Feb 10 '11 at 3:23
• @Tsuyoshi, I was commenting regarding your comment to Jukka. I just wanted to express my opinion that I don't think combining those proposals with cstheory will solve SE's problem regrading other CS fields suffering from low volume, nothing more. :) – Kaveh Feb 10 '11 at 3:44
• I'd like to add to the StackOverflow comparison that over there, quickly provided answers are often incomplete, do not relate to the question or are just plain wrong. I'd hate to see new TCS people become discouraged because the first three answers are posted by non-TCS people that -- very likely -- miss the point. – Raphael Feb 10 '11 at 17:27
• The "ideal" model of SO appears not to suit the communities that have decided to fork off into specialist SE sites for specialised kinds of programming. I think some people thrive in noisy, crowded bazaars; but others prefer quiet shops off the main drag where one can have a slower-paced interaction. – András Salamon Feb 19 '11 at 12:22

Thanks for raising the issue. I don't have a clear opinion on the issue and have to think more. But note that we started this separating from MathOverflow. A general research level computer science might be too big, and the cultures seem quite different. We might end up facing the same problems that lead us to separate from MathOverflow. There are reasons why departments have different groups, ACM has different SIGs, and researchers in Systems, AI, and Theory have different conferences.

I don't know if this is correct in general but in our department the amount of interaction between different groups is not very big, AI people work mostly together, similarly theory, systems, and other smaller groups.

I think AI researchers have already a site (metaoptimize) so it is not strange that the AI.SE did not get enough users to get off.

The research-level Crypto questions are definitely on topic here, but based on the questions posted on the proposal it is not clear to me that is what the Crypto proposal is aiming at. Similarly the practical algorithms proposal.

Lets go over the list you had there:

1. Artificial Intelligence; Computer Vision and Pattern Recognition; Computation and Language; (and Vision)

2. Computational Engineering, Hardware Architecture; Hardware Architecture; Networking and Internet Architecture; Operating Systems; Systems and Control; Robotics; Multiagent Systems; Software Engineering; Performance;

3. Graphics; Human-Computer Interaction; Multimedia; Sound;

4. Databases; Information Retrieval; Digital Libraries; Social and Information Networks; Computers and Society; Finance, and Science;

5. Mathematical Software; Numerical Analysis; Symbolic Computation;

6. Computational Complexity; Computational Geometry; Computer Science and Game Theory; Cryptography and Security; Data Structures and Algorithms; Discrete Mathematics; Distributed, Parallel, and Cluster Computing; Formal Languages and Automata Theory; Information Theory; Learning; Logic in Computer Science; Neural and Evolutionary Computing; Programming Languages;

I have dived the areas in the list to make the discussion more detailed and constructive (and I know that others would probably have different divisions). I think those in group 1 already have a site and are happy with it, it is unlikely that they will leave MetaOptimize. It seems to me that group 2 and 3 will probably want to have their own sites, and I have doubts about how interesting their questions would be for theory researchers. Group 4 and 5 are closer to theory. And most of group 6 areas are already on-topic on cstheory AFAIK.

• Surely you don't consider it a good thing that there's a lack of communication between research groups? In my experience you can only learn from each other disciplines. Either way, I think Joel's point was that this site perhaps shouldn't be 'just' for Theory scientists and that way allow more disciplines to have a home on Stack Exchange. – Ivo Flipse Feb 9 '11 at 18:42
• I think it is important for StackExchangers to be aware of the rich variety of disciplines involved around computing and its various scientific/theoretical connections and that the presence of different sites is helpful (although we will have cross-posting issues just as other forums and newsgroups do). I am lumper-splitter ambivalent on this question. – orcmid Feb 9 '11 at 19:22
• I suspect the "Practical Algorithms" proposal is an attempt to form a stackexchange site bridging theory and practice along the lines of the ALENEX conference. In my opinion, it is too narrow for a stackexchange site, and I think it would really be good for theoretical computer science community if we extended this site in that direction (and I actually think we are doing a fairly good job in answering the few questions we get along those lines). – Peter Shor Feb 9 '11 at 22:22
• @Peter, based on the questions on practical algorithms proposal it is not clear to me that is what they are aiming at: "what is the difference between NP-hard and NP-complete" is a very basic complexity question that can be answered by just looking them up on Wikipedia or any complexity theory textbook. Independent of their proposal and what they are aiming at, we can possibly extend the scope of cstheory in the direction you have in mind. – Kaveh Feb 10 '11 at 2:49
• Peter, Kaveh, I think what we need is more questions about algorithms and datastructures that are needed to a) solve a problem at all or b) improve performance (i.e. not related to complexity classes). I consider (formal) analysis and development (techniques) of such to be TCS. From there, the hop to practice is much smaller. – Raphael Feb 10 '11 at 17:33
• If the practical algorithms proposal makes it, we should make sure that there are people watching it, and migrating questions between this site and that one. – Peter Shor Feb 10 '11 at 18:05
• If we decided to open this forum up to the theory of databases as well (which I think is probably the closest to TCS), how would we even go about doing it? – Peter Shor Feb 16 '11 at 2:12
• @Peter, good question, I don't have an answer. If we decide to extend the scope it would be better to do it gradually, say first by theoretical works in areas like PL, DB and AI. I think we should start a new discussion on how to promote the site further but right now there are too many discussions going on and I personally have trouble keeping up with all of them. – Kaveh Feb 16 '11 at 2:38
• I think what we need to do right now is (1) promote the site more in theory venues (especially theory B) and (2) decide exactly where to cut off low-level questions. I think we could go a little more towards the low-level side without harming the site, but looking at physics stack exchange, I really think we don't want to go too far in that direction. – Peter Shor Feb 16 '11 at 23:05
• @Peter, I think having a gray area around research level is a good thing, but we shouldn't formalize it or put it explicitly in our scope. I like to know what @Gianluca Della Vedova and others mean by almost research level and which of currently closed question fall in that range. Note that although we say that the site is for research level questions we are not strict about enforcing it, the question that are closed as non-research level are usually typical undergraduate questions asked by students taking their first course on a topic which (to me) seems clearly off-topic for cstheory. – Kaveh Feb 16 '11 at 23:47
• @Peter: I already see theoretical database research as firmly in-scope, and have been posting from that vantage point for a while now. – András Salamon Feb 18 '11 at 21:24
• @Andras: So how should we advertise this in the theoretical database community? – Peter Shor Feb 18 '11 at 21:58
• @Peter, I think starting a new discussion would be more effective than continuing it here using comments. Would you like to start new discussion on how to advertise/promote the site further (especially in under-represented areas like theoretical DB, PL, ...)? – Kaveh Feb 18 '11 at 22:55
• @Peter: I will speak to some of the senior database people and ask, but ultimately it is probably a social process: people will be here if their colleagues are. – András Salamon Feb 18 '11 at 22:58

In my opinion there are a few, more-or-less independent, issues discussed here. I will try to list them:

1. do we want to broaden the scope of the audience of TCS.SE?
2. do we want to broaden the topics discussed on TCS.SE?
3. do we want to broaden the level of the discussions in TCS.SE?
4. what is the real-world kind of community that we want TCS.SE to resemble most?

In my opinion, almost everybody agrees that it would be beneficial to enlarge the audience of the site, but the directions of such expansion is not unanymously agreed upon.

I share the belief that CS is not a field sharing a common language, therefore I would not like TCS.SE to accept all possible CS topics. Also, I agree that we should welcome people coming from Theory B (and I would add OR people to that).

A more controversial opinion of mine is that we should also welcome questions that are almost research-level, provided that they are clearly tagged as such (I am thinking about something similar to the soft-question tag). The reason for that comes from my opinion on point 4.

The question originates from the idea that the TCS.SE community shoud actually model the one of a CS department. My opinion is that it should instead model a conference/workshop. A bolder statement is that TCS.SE should be an ever-running whole-TCS conference with over a thousands partecipants that the real-world TCS community sometimes talks about but has never materialized.

A second motivation for such a model is that it should be a vehicle for promoting TCS to potentially interested students, by showing what academic research in a decent, friendly community (surely TCS.SE qualifies) is like. The point of allowing almost research-level question is to provide a gentle introduction to advanced TCS topics suitable to undergraduate interested students.

• It is rather a workshop than a conference, don't you think? Regarding "almost research-level": we do this already, and should. There have been a number of questions which were covered in Master courses I took (e.g. basic FPT stuff). Since master courses routinely venture into research material, borders get blurry here, so we should have sufficient potential for people to enter cstheory. – Raphael Feb 14 '11 at 18:28
• Almost-research level questions also help communication between researchers in different parts of TCS. – Radu GRIGore Feb 16 '11 at 11:59
• @ Raphael I agree with your points regarding "almost research level". I am/was unsure that we actively welcome those question nor that we recognize their usefulness, especially since I have seen some comments strongly supporting the research-level-only scope of the site. I don't feel strongly about the conference vs workshop issue, so I have edited my reply to cite a workshop model. – Gianluca Della Vedova Feb 16 '11 at 15:14

Disclaimer: I started to participate this website only during the public beta. This means that I do not know how its scope was determined to be “theoretical computer science” instead of something broader like “computer science” or something narrower like “algorithms and data structure.” And I do not value much the opinion of a person who does not know the history. You should consider whether my opinion should count at all.

I like the idea of broadening the scope. Theoretical computer science has much to offer to and hear from applied fields. However, broadening the scope is dangerous to the quality of answers, especially to topics with fewer users. Therefore, I support broadening the topic only if we have a plan to keep the quality of answers in minor topics high.

Stack Overflow fits the model with a broad scope with many subtopics, and therefore I think that it is useful to see what happens there:

1. I guess that Stack Overflow has many C# users who are not usually interested in PHP and many PHP users who are not usually interested in C#, and I guess that they coexist just by using different tags. If this is true, we may use the same method. Occasionally we can see questions in the other tags to see if anything interesting is going on in the next room.
2. However, less popular topics are miserable on Stack Overflow. I have seen several high-score answers to questions about Haskell which are incorrect apparently because the answerer lacks real-world experience with the language. I imagine that not many Haskell experts are interested in Stack Overflow because the top page almost certainly contains no questions about functional programming. If there were a Stack Exchange website dedicated to programming in functional programming languages, the situation might have been different. I do not want to see the same thing happen on the proposed SE site with the broader topic.
• Good point about lack of quality answers on StackOverlow. It is similar for Scala. In general, the amount of questions for concepts that are answered by code fragments is frightening. A similar degree of disconnectedness would scare me away from here. – Raphael Feb 9 '11 at 22:40
• Tsuyoshi, if there is not much interaction and people just read question on specific tags why not have separate sites for them? I am missing the point of having one site if it is not really one community but many communities each leaving on their own tag. If most users are going to filter questions and there is not much overlap between the communities why should make them suffer by seeing others question? Anyone interested can go to visit the other sites in place of checking the other tags. I think I am really missing what is the benefit of having a single site with disconnected communities? – Kaveh Feb 9 '11 at 23:51
• @Kaveh: I do not have a good answer to your question. Still, I feel that separating the websites makes barrier higher for better or worse. If we can prevent bad effects, I believe that having one unified site makes more opportunity for communication beyond the field boundary. – Tsuyoshi Ito Feb 10 '11 at 0:17
• It seems that the Tex.SEhas a lot traffic. Several questions are asked in a short time. For example, the other day I asked a very simple question (tex.stackexchange.com/questions/10464/…), and soon it went down the list and got lost in the sea of questions, with no answers. This is a good example of Tsuyoshi's point 2, and something I would not like to see in this site. – Marcos Villagra Feb 10 '11 at 1:32
• This often happens on MO as well. I've had questions die because they went off the front page too quickly – Suresh Venkat Feb 10 '11 at 1:39
• @Raphael: Code fragments are perfectly good answers for programmers. Similarly, if you go to OR talks on optimization, you see these linear programs thrown up with baffling speed and lack of explanation, but that audience seems to understand them quite well. It's a question of what the community understands. – Peter Shor Feb 10 '11 at 18:07
• Peter, if the question is for concepts, then no, a small code fragment is not sufficient (in general), even though many programmers may think so. – Raphael Feb 10 '11 at 18:43
• @Raphael: Sorry. When I read your comment, I missed the word "concepts". – Peter Shor Feb 10 '11 at 20:50

The question of broadening the scope is indeed a good one. But recall that before thinking for enlarge the scope to CS outside TCS, we should first think about really broadening the scope to TCS theory B...

• ... and to other underrepresented areas of TCS, such as distributed computing. :) – Jukka Suomela Feb 10 '11 at 0:53
• Indeed. The only reasonably represented group here seems to be complexity theory. – Raphael Feb 10 '11 at 17:28
• Absolutely. If we had even close to as many questions from all areas of TCS as we do on complexity, this would clearly be enough to sustain this site. – Peter Shor Feb 10 '11 at 21:45

I wanted to comment on Robert's point, but the comment box is too short for my answer.

I think Robert's rephrasing is close to the spirit of what Joel intended, and unfortunately I think that this whole discussion has triggered some old fears. Without attempting to channel too much what the community thinks, let me make some points in response to Robert:

• Would we like to be part of a larger, harmonious CS gathering ? Of course ! I don't like being marginalized as part of a 'useless, mathematical' CS ghetto. The responses though come from fear of having to constantly defend ourselves and protect ourselves from the reams of 'but theory isn't useful' and 'who cares about theory' comments we're used to hearing anyway as part of a larger CS discussion. Call it battle fatigue if you will
• But do we think it has value ? that's more complicated. Your entire argument from value is based on the assertion that a large group has network effects that outweigh the niche community benefits we perceive here. The question is, for whom ? There's value for students who want to be exposed to the virtual university, but there isn't value for us, who want a community of our own: we get enough exposure to general CS in our departments, and many of us work a lot with outside groups (I have papers with DB, ML, vision, graphics and parallel folks, for example)
• We've worked very hard to create what we have so far. And by no means are we done growing our community. It's a pity that the other area51 proposals haven't taken off: I don't know how well they've tried to proselytize, but I know that many of us worked very hard to get us over the definition and commit phases with relentless promotion. I think therefore we're a little defensive about any attempts to change it. But I can see a future in which we do become part of a larger community - just not at this instant.
• My comment isn't a repudiation of your points, just a broad observation they sparked: Many of these threads lament CSTheory being ostracized in academic circles as "useless." Yet when asked to to become, not only mainstream by edict, but "big man on campus" (were everyone else is playing catch-up), the overwhelming reaction is a preference to stay isolated and keep to themselves, rather than playing a leading role in a continuum of subjects that radiate outward from Theory CS. I totally understand the preference to "keep to our own." I just find the dichotomy interesting. – Robert Cartaino Feb 10 '11 at 15:48
• true enough. there are deep-rooted scars ;). I personally feel it's only a matter of timing - that our community here isn't fully baked enough right now. I'd be willing to be part of a larger effort in general - since my secret master plan is to convert the whole world to algorithms ;) – Suresh Venkat Feb 10 '11 at 16:35
• @Robert Cartaino, @Suresh: Your discussion doesn't capture my own concerns. I tried to explain them better here. – Aaron Sterling Feb 10 '11 at 17:08
• Your points rekindle a hypothetical method of building these sites that I have been talking about (i.e. these are just philosophical ideas): You start by building these niche topical sites out of the enthusiasm and dedication of those groups. Then, at an appropriate time, start talks about merging like-minded groups into larger campuses. BUT... you would have to build into these sites a really strong implementation of "special interest groups" (SIGs) that would allow groups to maintain a strong, specialized group dynamic, without getting swallowed up by the bigger whole. – Robert Cartaino Feb 10 '11 at 17:58
• That sounds perfectly reasonable to me, Robert. I think I've taken a more negative tone towards this idea than I really feel. I think overall it could be great with the right tweaks in place, and both Lev's and Aaron's technical suggestions might help the transition go smoothly – Suresh Venkat Feb 11 '11 at 7:34

If expansion is considered, why is it considered under orthodox university department lines? For instance, I am in a department called Combinatorics and Optimization under the faculty of Math and I enjoy the site greatly. I would argue that $||\text{C&O} - \text{TCS}|| < ||\text{Software Engineering} - \text{TCS}||$ in any natural norm on common interests, tools, and ideas.

There are people in linguistics departments that ask questions about the learn-ability/structure of languages in clear TCS-friendly terms (as a dated example take the Chomsky hierarchy). People is biology departments that ask questions about the complexity, evolvability, and robustness of systems in clear mathematical ways. On the flip side, there are researchers in, say, software engineering or HCI that ask questions about the usability of a code base or interface that seem completely foreign to someone in TCS and much more friendly to a psychologist.

Wouldn't it be more exciting to see how similar ideas are used by a linguist or biologist that you seldom get to meet at your university, instead of reading about completely foreign ideas that a distant part of CS uses that come up at every other colloquium in your department?

Why expand towards unrelated parts of computer science before expanding to other parts of the natural (and even social) sciences and math that adopt the algorithmic lens and use the same language? Why not provide a service that you don't have at your home institution instead of modeling ourselves on some orthodox division of study?

• That's perfectly reasonable, but there are benefits to organizing according to orthodox/traditional taxonomies. First, you don't have to spend mental cycles deciding where things fit. You could simply list arXiv topics that are considered in and out of scope or say "Anything considered cs in arXiv is fair play." Second, you get the benefit of easy communication with colleagues in your departments with whom you presumably communicate regularly; this can help increase adoption. We certainly saw this with MathOverflow; if anything those topics are MORE disjoint than CS, and they still get along. – Joel Spolsky Feb 10 '11 at 19:50
• I don't want to sound like a cracked record here Joel, but trying to compare math and CS is a big mistake. Not only is the basic premise off, there's also a big culture in math of the big tent (look at how their conferences are structured). CS has nothing along these lines. – Suresh Venkat Feb 11 '11 at 7:33
• Joel, you seem to imply that spending mental cycles is to be avoided. This is not how we roll. – Raphael Feb 11 '11 at 10:22
• inspiring words! Yes, I see much common ground with subjects that are not always regarded by administrators as "close" to TCS. – András Salamon Feb 18 '11 at 21:56

For what it's worth, my belief is that a major contributor to the success of this site was the previous success of MathOverflow, and massively multi-collaborative efforts of Gowers, Tao, Kalai, polymath. These phenomena were very influential upon certain components of the theoretical computer science community (myself included) and sparked the urge (subsequently satisfied) for a site of our own. My contention is that in as little as a few months, members of other computer science research fields will in turn be influenced and encouraged by the success of this site (as well as perhaps the massively multi-collaborative efforts last year to pick apart Deolalikar's manuscript) to start their own site.

To be clear, I should also say that I do not favour an expansion of the scope of this website.

There are certainly risks in expanding the charter for the site, but there may be opportunities.

Theory B is a messier part of TCS than theory A, with more connections to the rest of CS. In particular, looking at the proceedings of such programming languages conferences as POPL or PLDI, you'll see a mix of theory B and non-theory contributions.

Some number of theoreticians will find a broader site attractive. The question is, how many? But if we did have the broadr scope, I would expect the first non-theory users to be from those who have some interest in theory, and that might well establish the tone for the site.

Lev's idea of having a series of fora would reduce risks. That we already make a lot of use of Arxiv-derived tags would make this easy to work with, at least from the user's point of view.

I think broadening scope now could achieve next to nothing, even assuming that people from other areas moved in here.

In my experience, theorists just think differently than software engineers, to create the hardest contrast. There would be next to no overlap in questions and too much divergence in mentality for one to provide helpful answers for the other.

Sure, we could peacefully coexist, no doubt. But I believe that not much mingling would take place.

• I am not that pessimistic, but I understand the possibility. However, if we can coexist peacefully, that is ±0 to us and +1 for people in applied fields who want their place in an SE site, which is arguably a good thing to do. I am worried more about whether we can peacefully coexist or not. – Tsuyoshi Ito Feb 9 '11 at 23:12
• @Tsuyoshi: I'm also worried about whether we can coexist or not. Just like @Kaveh said under the answer of @Robert's, some of the theory folks find it hard to get used to fancy things. If we have to search tags and dig questions deep inside the site, I guess some of them will be driven away. – Hsien-Chih Chang 張顯之 Feb 10 '11 at 5:21

Excellent discussion. I am intrigued by the passion poured into it.

I would like to get your thoughts from a different angle — Rather than contemplating whether you would allow this expansion of topics, I would like to see what you think about being included in an inevitable site covering the larger field of "Computer Science." There's a big demand for these topics and they inevitably have to go… somewhere.

What we are really proposing here is the creation of something like a virtual Grand University of Computer Science. I've been looking at the ACM SIGs while Joel cites the Cornell arXiv: Computer Science library. Either way, I very much envision this hypothetical site being a higher-level academic setting where you have that sense of place of belonging to a top-branded university; a place where a community of students, professionals, and scholars collaborate about higher education topics and research.

The simple question we are coming to you with… Can we break ground here and expand your college into a top-tier, well-equipped, full-fledged University? Or, do we have to go a few miles down the road and find another piece of property and build our campus there?

You've already created your own specialized, great virtual college campus here. You've certainly earned your respected place to keep as you see fit, no doubt. But the (currently) top-voted answer laments that "Theory is marginalized enough in CS as it is." In that vein, I am having trouble envisioning a site purported to be a virtual CS University, but always having that little asterisk that says: but for Theoretical questions, go here

My question may be a bit loaded, but I would like to point out that there is a lot of value in having a strong site that includes your topics of interest. Topics don't simply disappear because people are also talking about related topics. The community doesn't let it. If the tag-set is strong, the subject stays strong. These sites scale wonderfully. The traditional religious and platform wars simply do not happen; all are welcomed and we all get along… somehow.

We've already proven that the network effects of scale far, far outweigh the niche closeness you might feel here.

• Asterisk sounds good. Let's not forget that some topics dominate MathOverflow and others barely exist there. The rosy picture painted here is not consistent with empirical reality. Let's not give away what took us months to build. I also wish people would stop comparing a site where asking a question is fairly easy, to a site where even asking a good question might require serious struggle, to say nothing of answering it. – Aaron Sterling Feb 10 '11 at 2:08
• I think that you have a good point. But Suresh has argued that CS does not share a language, which is worrying to me. Unfortunately, I do not enough experience in trying to communicate with people in CS other than TCS to speak about this community barrier in my own words. – Tsuyoshi Ito Feb 10 '11 at 2:21
• @Tsuyoshi Ito: But you don't have to speak to them. That's the point of scalability and network effects. Don't you think that, at least on occasion, that someone who frequents one of the other "departments" might just come over and have something useful to contribute once in awhile? – Robert Cartaino Feb 10 '11 at 2:26
• Then please build that university it would be so good for us to join. Instead, though, you want us to renege on our promises to the community to build something for TCS, so people in other disciplines don't have to do the recruitment work we did. Once they have built their communities, we can have this discussion maybe. It is opportunistic to try to take advantage of our success in this way. – Aaron Sterling Feb 10 '11 at 2:34
• @Aaron Sterling: That's what I said: Building a separate site is certainly an option. No one's asking you to renege on your promises or being opportunistic and taking advantage. This is a discussion. 'Thought you might like to be included in a discussion about creating a site akin to your interests. – Robert Cartaino Feb 10 '11 at 2:44
• @Robert: Yes, crossover can happen (although it will not be common). That is exactly why I like the idea of expanding the scope although Aaron, Suresh and others may call me naive. On the other hand, if the top page of the website contains almost nothing someone is interested in, it is difficult to attract him/her. From Suresh’s answer, I get the impression that SE in the whole computer science may have much lower chance to attract TCS people than the current TCS SE does. – Tsuyoshi Ito Feb 10 '11 at 3:07
• Robert, I understand the problem you are facing, but I think the real problem is different and will not be solved by joining these proposals (and in fact might work in the other direction). Theoretical researchers have a different culture from programmers or web-developers, they tend to like simplicity, check their websites, most of them are bare HTML (if at all) and they like it and I have seen them complain about group websites being too fancy. It is hard to get them to use new technologies, we are sincerely trying to expand cstheory community to include more theory B, crypto, ... – Kaveh Feb 10 '11 at 3:26
• [continued] but it is difficult, you can tell this easily from the number of question we have on different top level ArXiv tags on cstheory. I have serious doubts that joining other CS proposals will solve the problem, the problem is deeper. Based on what I know from my friends from systems in the department(see my answer to see the areas I am referring to) a large number of them already use SO and I think that is a better point to start. I guess a research level systems site would attract them, and IMHO for AI the only real option is to negotiate with people on MetaOptimize to get them on SE. – Kaveh Feb 10 '11 at 3:26
• [continued] the AI researcher have found a home and it would be difficult to get them to start using another site while MetaOptimize is there. IMHO, building a research-level systems site should be your focus, they are closer to SO culture, use new technologies more often, and getting them on a site should be much easier than other proposals. – Kaveh Feb 10 '11 at 3:32
• Posted a new answer: my comment went on too long. See here: meta.cstheory.stackexchange.com/questions/947/… – Suresh Venkat Feb 10 '11 at 5:55
• Regarding the list of ACM SIGs: it is misleading. Some SIGs are very specialised while others have a broad scope; some of them share a common language and culture while others are more disjoint. Even though the scope of this site roughly corresponds to the scope of SIGACT, it does not mean that we need 35 other sites, one for each SIG! – Jukka Suomela Feb 10 '11 at 12:02
• If cstheory ends up atrophying as a result of CS-focused attention being drawn to a general site, then I will have to try harder to help carve out a niche for TCS at MO. I committed to and helped to build cstheory because it seemed a promising way to build a community that wasn't well supported at either MO or at SO. – András Salamon Feb 18 '11 at 22:33

It seems to me that the broken thing that Joel is hoping to fix is that many computer science researchers do not have a StackExchange home, yet it seems difficult to create compelling enough Area51 sites to take off. In a first-pass analysis, there are probably just as many people in AI as in TCS so why did the AI site not take off?

However, many of the non-theory computing researchers and students I know are already on StackOverflow. Maybe these folks do not have the incentives to move away from SO to form new communities? If I had a 10K+ reputation on SO I would certainly find it jarring to have to build a new site from scratch, scrabbling initially for enough votes to even close a question as off-topic. Few of the people on cstheory came from SO, and MathOverflow had different software, so downgrade of functionality wasn't an issue.

CSTheory certainly became significantly less compelling for me post-beta, as high reputation users lost access to important site tools such as the list of all recent edits.

• I totally agree about the post beta period issue. – Joe Fitzsimons Feb 19 '11 at 0:08
• this is unfortunate. I did notice that both you and Joe weren't showing up that often :(. I don't like the one-size-fits-all thresholding for reputation that the SE sites use, and given that it's hurting participation, that's even worse. – Suresh Venkat Feb 19 '11 at 4:00
• I don't think Stackoverflow serves the same purpose for other CS researchers (or students) than TCS does for theorists. So maybe there is no need for such a site in other areas, or a critical mass of interested people has yet to commune. But on the other hand, some members on Area 51 actively suppressed the general Computer Science proposal. – Raphael Feb 20 '11 at 8:02
• @Suresh: Sorry, I'm trying to get back into it now. – Joe Fitzsimons Feb 20 '11 at 23:24

+1 I think you might as well do this. On the "Official ACM" Linked-In group, there was a question about whether or not Computation Theory should be required for Computer Science undergraduates.

What that revealed to me is that there is still vague understanding of the relationship of theoretical computer science and the broader computer science discipline, since some responders thought theoretical computer science included software engineering topics, analysis of algorithms, etc.

It would appear that making this a general Computer Science forum would assist in bringing together an understanding of the sub-disciplines, as it were. I trust that Computer Science would also allow for applied research, not exclusively theoretical research (however that strikes folks as different).

We still have the confusion of computer science and programming to deal with, but I think that is not something we can control and it is no reason not to broaden this StackExchange theme to Computer Science researchiness (however one draws the line about that).

• I looked around cstheory.stackexchange a bit more, and it strikes me that this is specialized enough, with enough requirement for rather rigorous preparation, that it merits being retained as a separate site. That leaves open the question of where computer-science discussions on less highly-abstract topics might fall, so long as they remain scientific. For example, where would one ask questions about a topic in the just-published vol.4A of The Art of Computer Programming, or discuss how to qualify a random-number-generator? – orcmid Feb 9 '11 at 19:10
• Who on earth would ask whether to teach computation theory to CS undergrads? That's like wondering whether to teach Calc III to Math undergrads. Maybe the analogy is a bit hyperbolic, but still! – luis.espinal Mar 9 '11 at 13:44

Seems that not a single answer supported Joel's point of view, so here is one.

### Point 1: Unclarity for a user

From a user prospective:

if my question is too theoretical for 'stackoverflow', then I post it to 'cstheory'.

This is a wrong behavior, but you can see this trend by looking at many-many "easy" questions on cstheory --- many questions should be moved/posted to cs. Hence, the original assumption separating cstheory/cs results in separation of question difficulty was not confirmed in real life. (I might be wrong here about the original intention of creating two communities; see below. I might also be wrong about "many-many".)

### Point 2: Bad naming (point 1 cont.)

If cstheory is intended for research-level questions, then call it csresearch. If it is intended to split TCS/CS, then call it tcs. Why not cstheory? to avoid the wrong behavior mentioned in point #1: "lame" users are more familiar with the abbreviation cs than tcs, so it is more likely that they publish to cs. But now they see cstheory and the brain fires: "hey, it is about cs" and "hey, yes it is too theoretical for stackoverflow" so "hey, i will post it to cstheory", unaware of existence of cs`. Alternatively, stackexchange could promote cs more aggressively than cstheory, to a "lame" user.

• Well the site is called Theoretical Computer Science... just the URL has cstheory. But yeah, you make some good points. – Bjørn Kjos-Hanssen Jun 9 '19 at 7:53

Maybe some voice from outside... IMO there exist a not so well visible but still solid border between Computer Science and something that I call Computational Science.

The first is mostly a part of mathematics dealing with algorithms, data structures, complexities, languages and stuff. This is what mostly happens here.

The second is an interdisciplinary movement of people using computer computations to make science; this group is rather united by common practical problems and methods than a common interest. Those are people that make all kinds of simulations, like computational physicists, computational chemists, computational biologists, computational sociologists, ..., meteorologists, economists, visual/physical effect makers, various kinds of engineers; people processing data, like various data scientists, bioinformaticians, chemoinformaticians, again economists, machine teachers, text miners, image and sound wizards and the rest of data-AI; finally all soft computing, robotics and steering theory debris.

There is some overlap between the two, mostly in areas of numerics, BLAS and some "golden" algorithms like Smith-Waterman (C-nal Scientists spent thousands of CPU hours in such so they would use any fast working black-box C-ter Scientists would gave them). Outside this C-nal Scientist don't care much about theoretical aspects of their algorithms. Also most C-ter Scientist don't care much about practical aspects of their work -- and that's why I think those two topics won't blend well.

Summing up, I second with integrating C-nal Science on Area, but rather in a new proposal than this site; see my Area51 discuss question about it.

• Unless you are proposing to incorporate theoretical computer science with computational science, this has very little to do with the discussion at hand. – Dave Clarke Feb 9 '11 at 18:20
• @Dave Joel is proposing this global merge, I'm opposing. – mbq Feb 9 '11 at 19:47
• When did Joel propose to merge computational science to TCS SE? – Tsuyoshi Ito Feb 9 '11 at 21:28
• Fifth paragraph... I know that in the end the main proposal is to add ArXiv category only, but ClS was mentioned and such things like to diffuse. – mbq Feb 9 '11 at 21:54
• Sorry, I still fail to see which part you are referring to. As I understand it, “computational science” means science with the emphasis on computation as a tool. Bioinformatics may count as part of computational science, but are you referring to this? I do not think that it is correct to generalize his list to the vast field of computational science. – Tsuyoshi Ito Feb 9 '11 at 22:33
• @Tsuyoshi I absolutely agree; treat this post as a kind of disclaimer for people reading this thread. – mbq Feb 10 '11 at 21:05

I would like to see this site be broad rather than narrow, and I hope it will be friendly to non-experts trying to learn more. As far as the crossover between CS and Math, I looked at the names {CS,Math} Overflow, and thought, maybe "Overflow" could actually allow Stack Exchanges to talk to each other.

• But why "this" site? Why not start another general purpose CS site where fairly basic questions are invited? I like having a site where the front page isn't flooded with inanely basic questions every time a freshman algorithms class gets a new HW assignment. Where I can post a question on an esoteric subject of constructive type theory and have confidence I'll get a decent answer. Where experts aren't driven away by a ridiculous noise-signal ratio. – Mark Reitblatt Feb 10 '11 at 3:37
• OK, I see your point. At least two questions then come up. What would the other site be called, and where does the line get drawn between what goes Here and what goes There? Maybe the answer is, "If I can google your question and find a good pointer in the first page of links, then the question should have been asked There [at the general purpose CS site] not Here." Suggestions for There names: Introduction to CS, CS Apprentice, Learning CS, General CS. – gknauth Feb 11 '11 at 7:35
• gknauth, see meta.cstheory.stackexchange.com/questions/946/… – Raphael Feb 11 '11 at 10:28
• I just found out about the physics stackexchange site. I'm struck at how welcoming that site is to all comers, and I wonder if the effort at the CS Theory site to keep itself friendly only to top people is an indicator why people don't pursue CS as much as we'd like. – gknauth Feb 25 '11 at 9:24