Proposal: Computer Science (Non-Programming)

I don't know how Computer Science ended up under Professional, but it clearly belongs to the Science category.

  • 1
    Care to elaborate why is it so clear? One can argue (as I do) that computer science is an applied science, i.e. engineering, which is not the same, as fundamental theoretical science. While there is plenty of theory in computer science (ethics, security, data structures, etc.) it is still focused on practical implementation.
    – theUg
    May 26, 2012 at 15:10
  • 3
    @theUg Computer science is science, like it says on the tin. Applied science is still science. There are both theoretical and applied aspects to computer science, like physics, biology and the other sciences. Don't confuse science with engineering: the engineering side of computer science is mainly programming, but this is not what the computer science site is about. May 26, 2012 at 16:02

2 Answers 2


I agree with Gilles.

From Wikipedia:

  • Computer Science is the scientific and mathematical approach to computation...
  • A computer scientist is a scientist who specialises in the theory of computation and the design of computers.

Rather than continue pulling quotes from Wikipedia, let me summarize from my own experience in CS. (Granted that was 10 years ago...)

| Theory      || Computer    | Physics     |
| (science)   || Science     |             |
+-------------++-------------+----------- -+
| Practice    || Computer    | Electrical  |
|             || Programming | Engineering |
| Design      || Software    | Electronic  |
|             || Design      | Engineering |
| Development || Software    |             |
|             || Development |             |
|             |+-------------+-------------+
|             ||   Computer Engineering    |
|             ||                           |

I'm sure I got the hardware side of things wrong, if someone more familiar with the hardware side wants to comment, I'll edit the table.

The table can be thought to be arranged roughly from Theoretical to Applied. The term Professional stems from Profession and is tied to the application of a discipline, hence further down the table.

Computer Science actually used to be a field in mathematics. In the stereotypical Math -> Physics -> Engineering spectrum, CS is closer to Math (theory, proofs, developing tools) than Engineering (application, using the tools to design/construct/accomplish things in the real world). CS is more about theorems, proofs, and designing programming languages than it is about writing software.


Some would classify computer science as engineering or technology. In academia, it is generally taught out of the engineering college. In contrast, math and sciences are taught out of the college of liberal arts and sciences. Not sure who owns electricity, but I think unless we look at physics, electrical engineering may be doing work in both applications and theory.

In a first day lecture for an Applied Cryptography class, one of my Computer Science professors started a relevant philosophical discussion. He observed that:

Sciences have names like:

  • Astronomy
  • Biology
  • Botany
  • Chemistry
  • Physics
  • Zoology

Some areas of study called might not be:

  • Political science
  • Social science
  • Computer Science

Naturally, the subject of his class started with the word "applied", but there were still proofs in class and on the exams.

Some like D.L. Parnas, who did foundational work that led to object oriented methodology, said that the software part of computer science is actually engineering. Others claim computer science as a science, qualifying it as "mathematical science" or asserting that even though it studies man-made objects, it is still science. A reference and commentary to other references from computer science luminaries like Dijkstra and others by Peter Denning can be found in Is Computer Science Science? Denning's conclusion was:

Computer science meets every criterion for being a science, but it has a self-inflicted credibility problem.

Denning asserts that experiments were not previously a rigorous part of validating findings about computer science, but seven years ago he said things were and would continue to improve. I know the professor I mentioned earlier was methodical and published proofs. He created and analyzed a distributed operating systems to validate his research for articles published in IEEE Computer. He certainly seemed credible in expressing a concern about our community's approach to things.

  • 1
    He's missing another explanation, which is that newer concepts don't have words yet. There wasn't enough computer science before computers to warrant a word. This is also a very parochial argument: there are other languages than English. Aug 23, 2012 at 12:00
  • 1
    OK, but grant me the point that simply calling something a science does not make it one. I have beefed up the answer with a reference that calls us to action to make what we do more like science by validating through experiment, and refers to expert opinions and published work pro and con about the question. Sep 1, 2012 at 6:38

You must log in to answer this question.

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