Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Is Computer Science Science? (2005) [pdf] (mtu.edu)
36 points by Jtsummers on April 27, 2015 | hide | past | favorite | 16 comments


Could someone help me understand the significance of this long-running debate? What is different about a world in which CS is a science and a world in which CS is not a science?


We'd have to rename the whole field. The cost in letterhead changes alone would make it prohibitive.


Well, I don't think the debate over the terminology itself is very significant, but I do think there's an ongoing debate over how computing should be taught, and who should learn it, which is significant. Perhaps the battle lines in the two debates are drawn in similar places. In any case, the article has some interesting things to say about all the different things computing is or can be, even if you ignore the stuff about whether "science" is the right word.


Misappropriation of expertise: there is no advantage to having a bunch of people running around thinking they are scientists when they've had next to zero scientific training.


a few people's egos


The author talks about the fact that Computer Science is useful to real science and understanding the natural world – fine, but kind of irrelevant. Same is true for statistics, maths, programming, engineering etc., none of which are generally considered a subset of science.

What you need is a compelling example of the scientific process of hypothesising, making predictions and collecting data happening within the subject. I'm not seeing that here.

Computer Science usually proceeds as theorising from a set of axioms (where your axiom is a Turing machine or a type system, for example). It seems pretty clear to me that that makes it a branch of maths – which is not exactly a criticism of the subject!


There are also computer scientists who study how humans use computers, e.g. HCI, which often includes hypotheses, experiments, etc. There is certainly a subset that only cares about proofs, though.


Knuth's Turing Award speech "Computer Programming as Art" [1] is relevant. It is useful to apply the scientific paradigm when appropriate, but it is also true that there is an aesthetic dimension to computer programming and the use of computer programs as a form of human knowledge that gets lost unless we remember that the artistic element is vital to the field.

[1] http://dl.acm.org/citation.cfm?id=361604.361612. See also http://www.paulgraham.com/knuth.html for a transcription.


It's an interesting topic, thanks for sharing.

Some related posts that might contribute to the current discussion: https://hn.algolia.com/?query=%22is%20computer%20science%22&...


If it's not science it's definitely mathematics (or at least a significant portion of CS is math), which is fine by me.

If anything, math has historically been far less fickle than the advances that the scientific method has brought (usually being misused, but in the name of science nonetheless).


Is there a tl'dr?

I think we can name the science part of computer science "algorithmic science" (or something to the same effect) and the engineering part "computer engineering" and call it a day.


The reasons for not calling Computer Science a science vary mostly based on the background of the beholder. Some object because "we only compute man-made objects", while others argue that "Computer Science is not a science, and has little to do with computers."

A graphic in the article lists these areas and problems:

  Area & Problem
  
  Computation
  • Unbounded error accumulation on finite machines
  • Non-computability of some important problems
  • Intractability of thousands of common problems
  • Optimal algorithms for some common problems
  • Production quality compilers
  
  Communication
  • Lossless file compression
  • Lossy but high-fidelity audio and video compression
  • Error correction codes for high, bursty noise channels
  • Secure cryptographic key exchange in open networks
  
  Interaction
  • Arbitration problem
  • Timing-dependent (race-conditioned) bug problem
  • Deadlock problem
  • Fast algorithms for predicting throughput and response time
  • Internet protocols
  • Cryptographic authentication protocols
  
  Recollection
  • Locality
  • Thrashing
  • Search
  • Two-level mapping for access to shared objects
  
  Automation
  • Simulations of focused cognitive tasks
  • Limits on expert systems
  • Reverse Turing tests
  
  Design
  • Objects and information hiding
  • Levels
  • Throughput and response time prediction networks of servers


It's more a science than economics, which is good enough for me....


The bar for a "science" couldn't get much lower.


Economics as a discipline is very reasonable given the constraints involved (studying human beings not particles, no experiments, short history of events to study). Unfortunately it takes a few years to get up to speed in the discipline, and only a few hours to write an "economics is all nonsense" blog article. Also see https://xkcd.com/793/


- Buyer beware of someone selling their understanding of economics as a "discipline."

- Supply and demand is a law not unlike Candy Crush is a post-scarcity economy.

- The Ferengi Rules of Acquisition are probably just guidelines, marketed as rules to sell more copies.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: