Proposal: Computer Science (Non-Programming)

Gotta admit, I see the point of this. From the look of the proposed questions so far, this would be a solid resource for CS students, who may well find their questions misunderstood or lost in the shuffle on SO.

That said... I feel there's a lot of value to be had in hosting these questions on Stack Overflow. There's already some confusion between SO and Theoretical CS.SE, even though the latter has a fairly narrow, well-defined scope. There's been some discussion on this in the past, and the prevailing opinion seems to be that the community on SO simply can't be relied on to even accept these questions, much less garner proper answers for them... Yet another discussion raises the concern that this would end up being a site entirely for students, with experts finding themselves more comfortable on one of the many existing sites.

I would rather work to fix problems with post-secondary students asking CS questions on SO than try to explain to folks how to differentiate between this, CSTheory, Programmers.SE, and SO. And I would much rather see SO welcoming students at all levels than create some arbitrary demarcation unlikely to be properly understood or agreed upon on any of the related sites. Most of all, I'd hate to lose the opportunity to foster students able to turn and contribute back to the community by forcing them off the site as their education progresses.

Carving off an entirely new site should be the last solution considered. It's hard to go back on that. And if it fails... Well, it's a lot of wasted time and effort.

So what else can we try first? How can we make Stack Overflow - or Programmers even - more effective as a resource for this audience?

SO? Programmers? You can't.

Unsurprisingly, my opinion hasn't changed since that Meta.SO post, because the state of existing sites hasn't changed significantly. Let's review them:

  • Stack Overflow: Theoretical questions linger unloved, even get closed (what, no code?). Questions get closed as non-constructive because they're about science and not technology. Questions get closed as NaRQ because they weren't understood. And the biggest problem of all: it's impossible to find computer science questions in all this mass. Plus you can't seriously propose a science site that doesn't have $\LaTeX$.
  • Programmers: It's trying to get a monopoly on things like “algorithm and data structure concepts” and “whiteboard stuff” that used to be ok on Stack Overflow. The thing is, if anything, Programmers is less well equipped for scientific questions. Even though the quality has been improving, the dominant themes of the site are not ones that would interest computer scientists. A computer science community would have to be created from scratch, and if you're going to do that, it's a lot easier on a site that doesn't also cater to licensing issues and development methodologies and business concerns and what not. Plus, no $\LaTeX$.
  • Theoretical Computer Science is about research-level theoretical computer science. It would be feasible to relax the theoretical part, but the community is reluctant. It would not be possible to relax the research-level part, that would destroy the existing site.
  • Mathematics is at least somewhat realistic. It's already used to discussing science at all levels. It has $\LaTeX$. There is already a small community on some topics that bridge mathematics and computer science, such as logic and cryptography. I'm not very confident in the realism of building a bridge between programmers (that's the occupation of posters on SO, not the SE site with that name) and Math (that's the SE site). Would more applied computer science (that's not backed by rigorous proofs) be able to get a foothold? Would pseudocode or code examples (which I'd expect to be common on CS.SE) be accepted? There's also the concern that the Math.SE has habits that differ from most other SE sites, especially SO (such as the sanctity of comments and decisions made by voting); more bridging between SO and Math.SE would lead to some friction.

In summary, you can't make CS questions fit on SO or Programmers. It might be possible on Math, but that's not assured.

Additionally, Joel Spolsky wrote that “the right size [of a SE site] might be somewhere around the site of a university department”. Well, most universities have a computer science department these days (and when they don't, it's a toss-up whether it's a difficult cohabitation with Math or a difficult cohabitation with EE). It's taken a long time on Stack Exchange (when Area 51 started, I thought a CS site would be amongst the first to appear), but let's finally have a CS department.

  • Offtopic: “computer science (that's not backed by rigorous proofs)” I doubt that any science not backed by rigorous proofs exists. Unless you consider things like homeopathy and astrology as “sciences.” :) – beroal Nov 13 '11 at 16:45
  • 4
    @beroal Science is not defined by rigorous proofs. In fact, some definitions of science exclude studies that are based solely on proofs (which they classify under mathematics) and focus on the empirical side. Science includes not only proving things, but also formulating and testing axioms. What makes things like homeopathy not sciences is not their lack of proofs but their lack of testable (or non-refuted) axioms. – Gilles Nov 13 '11 at 17:04
  • Your argument does not diminish my argument. In any empirical science, when it contains a cooked theory scientists calculate predictions, and those predictions must be proved, not be made up of scientists' opinions. If the science does not do this then it is not a science. – beroal Nov 14 '11 at 21:26
  • 3
    I think you have a different definition of rigorous proof than mathematics, beroal. Measuring values that seem to fit the hypothesis well enough is not a proof in mathematics. Basically all other sciences run on this principle, though (aside from their resp. theoretical subfields, maybe). – Raphael Dec 1 '11 at 10:22

Redefining scopes won't change the community. And as far as my limited SO experience goes, the SO community mostly consists of programmers, not (computer) scientists.

Aside from how welcoming they can be towards CS questions, aside from very different factual knowledge, programmers and scientists tend to think differently. The gap is not as large as between say humanities and science, but its there and in my experience not at all helpful in discussions, especially so because many people are not aware of the gap.

Therefore, I still think a distinguished site for CS is the way to go. There may be questions for which it is not clear where to go per se, so the quality/direction of answer I want might inform my decision more than the question itself. I think this is a good thing; maybe we should stop thinking in terms of questions but rather of answers.

  • I disagree with that first statement. Scopes define communit culture abundantly. – MisterGeeky Nov 6 at 19:31
  • 1
    @MisterGeeky If that were true, all websites with similar scope would have similar culture. Is that so, in your experience? – Raphael Nov 6 at 19:43
  • 1
    Lack of interaction is not a quantifiable experience I can judge by. How many CS SE's are dead right now, eh? – MisterGeeky Nov 7 at 2:41
  • @MisterGeeky I don't know. I have ignored all but Computer Science, which is very much alive. Personally, I consider all the more narrow ones redundant. But still, if successful, they may have spawned very different communities than Computer Science, even if their scope is a subset. – Raphael Nov 7 at 6:41

Well, from what I have seen so far, there's really two other options we can try as an alternative to another CS site:

  • Expand the scope of SO to include all areas of computer science in addition to just programming questions.
  • Expand the scope of TCS so that it is no longer exclusive to research only, and possibly include other areas of CS that's less 'theoretical'

There will be a lot of resistance on change of scope on the part of the TCS community, so the only other logical choice I can think of, as an alternative to another CS site, is to expand the scope of SO. There may be a resistance to this change, but it may be worth a try.

As a start, this would require a change to the current FAQ to specifically encourage computer science questions, and it would also mean that SO will need to be changed to support LaTeX, not to mention perhaps there probably needs to be an announcement about the change of scope, if it were to happen.

I don't know if that will be sufficient to attract a CS community on SO, but it may worth a try.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .