Minds and Machines

, Volume 21, Issue 3, pp 361–387 | Cite as

Computing as a Science: A Survey of Competing Viewpoints

  • Matti TedreEmail author


Since the birth of computing as an academic discipline, the disciplinary identity of computing has been debated fiercely. The most heated question has concerned the scientific status of computing. Some consider computing to be a natural science and some consider it to be an experimental science. Others argue that computing is bad science, whereas some say that computing is not a science at all. This survey article presents viewpoints for and against computing as a science. Those viewpoints are analyzed against basic positions in the philosophy of science. The article aims at giving the reader an overview, background, and a historical and theoretical frame of reference for understanding and interpreting some central questions in the debates about the disciplinary identity of computer science. The article argues that much of the discussion about the scientific nature of computing is misguided due to a deep conceptual uncertainty about science in general as well as computing in particular.


History of computer science Philosophy of computer science Computing as a discipline Computer science 



This research was funded by the Academy of Finland grant #132572.


  1. Arora, S., & Chazelle, B. (2005). Is the thrill gone? Communications of the ACM, 48(8), 31–33.CrossRefGoogle Scholar
  2. Atchison, W. F., Conte, S. D., Hamblen, J. W., Hull, T. E., Keenan, T. A., & Kehl, W. B. (1968). Curriculum 68: Recommendations for academic programs in computer science: A report of the ACM curriculum committee on computer science. Communications of the ACM, 11(3), 151–197.CrossRefGoogle Scholar
  3. Brooks, F. P., Jr. (1996). The computer scientist as toolsmith II. Communications of the ACM, 39(3), 61–68.MathSciNetCrossRefGoogle Scholar
  4. Bunge, M.(1998a). Philosophy of science: From explanation to justification (Rev. ed., Vol. 2). New Brunswick, NJ: Transaction Publishers.Google Scholar
  5. Bunge, M. (1998b). Philosophy of science: From problem to theory (Rev. ed., Vol. 1). New Brunswick, NJ: Transaction Publishers.Google Scholar
  6. Campbell-Kelly, M., & Aspray, W. (2004). Computer: A history of the information machine (2nd ed.). Oxford, UK: Westview Press.Google Scholar
  7. Carnap, R. (1967). The logical structure of the world; and, pseudoproblems in philosophy. California: University of California Press.Google Scholar
  8. Casti, J. L. (1989). Paradigms lost: Tackling the unanswered mysteries of modern science. New York, NY: Avon Books.Google Scholar
  9. Ceruzzi, P. E. (2003). A history of modern computing (2nd ed.). Cambridge, MA: MIT Press.Google Scholar
  10. Chalmers, A. F. (1999). What is this thing called science? (3rd ed.). Queensland, Australia: University of Queensland Press.Google Scholar
  11. Church, A. (1936). An unsolvable problem of elementary number theory. American Journal of Mathematics, 58(2), 345–363.MathSciNetCrossRefGoogle Scholar
  12. Colburn, T. R. (2000). Philosophy and computer science. Armonk, NY: M.E. Sharpe.Google Scholar
  13. Couvalis, G. (1997). The philosophy of science: Science and objectivity. London/Thousand Oaks/New Delhi: SAGE.Google Scholar
  14. CSAB. (2006). Computing as a profession.Google Scholar
  15. De Millo, R. A., Lipton, R. J., & Perlis, A. J. (1979). Social processes and proofs of theorems and programs. Communications of the ACM, 22(5), 271–280.CrossRefGoogle Scholar
  16. Dennett, D. C. (1996). Darwin’s dangerous idea: Evolution and the meanings of life. New York, NY: Simon & Schuster.Google Scholar
  17. Denning, P. J. (1980a). ACM president’s letter: On folk theorems, and folk myths. Communications of the ACM, 23(9), 493–494.CrossRefGoogle Scholar
  18. Denning, P. J. (1980b). ACM president’s letter: What is experimental computer science? Communications of the ACM, 23(10), 543–544.CrossRefGoogle Scholar
  19. Denning, P. J. (1981). ACM president’s letter: Performance analysis: Experimental computer science as its best. Communications of the ACM, 24(11), 725–727.CrossRefGoogle Scholar
  20. Denning, P. J. (2003). Great principles of computing. Communications of the ACM, 46(11), 15–20.CrossRefGoogle Scholar
  21. Denning, P. J. (2005). Is computer science science? Communications of the ACM, 48(4), 27–31.MathSciNetCrossRefGoogle Scholar
  22. Denning, P. J. (2007). Computing is a natural science. Communications of the ACM, 50(7), 13–18.CrossRefGoogle Scholar
  23. Denning, P. J., Chang, C., & CC2001 Joint Task Force. (2001, March). Computing curricula 2001: Computer science volume. pdf.Google Scholar
  24. Denning, P. J., Comer, D. E., Gries, D., Mulder, M. C., Tucker, A., & Turner, A. J., et al. (1989). Computing as a discipline. Communications of the ACM, 32(1), 9–23.CrossRefGoogle Scholar
  25. Denning, P. J., Feigenbaum, E., Gilmore, P., Hearn, A., Ritchie, R. W., & Traub, J. (1981). A discipline in crisis. Communications of the ACM, 24(6), 370–374.CrossRefGoogle Scholar
  26. Denning, P. J., & Freeman, P. A. (2009). Computing’s paradigm. Communications of the ACM, 52(12), 28–30.CrossRefGoogle Scholar
  27. Denning, P. J., & Rosenbloom, P. S. (2009). Computing: The fourth great domain of science. Communications of the ACM, 52(9), 27–29.CrossRefGoogle Scholar
  28. Deutsch, D. (1997). The fabric of reality. London, UK: Penguin Books.Google Scholar
  29. Dijkstra, E. W. (1972). The humble programmer. Communications of the ACM, 15(10), 859–866.CrossRefGoogle Scholar
  30. Dijkstra, E. W. (1974). Programming as a discipline of mathematical nature. American Mathematical Monthly, 81(6), 608–612.zbMATHMathSciNetCrossRefGoogle Scholar
  31. Dijkstra, E. W. (1987). Mathematicians and computing scientists: The cultural gap. Abacus, 4(4), 26–31.Google Scholar
  32. Dijkstra, E. W. (1997). The tide, not the waves. In P. J. Denning & R. M. Metcalfe (Eds.), Beyond calculation: The next fifty years of computing (pp. 59–64). New York, NY: Springer.Google Scholar
  33. Dodig-Crnkovic, G. (2003). Shifting the paradigm of philosophy of science: Philosophy of information and a new renaissance. Minds & Machines, 13(4), 521–536.CrossRefGoogle Scholar
  34. Duhem, P. (1977). The aim and structure of physical theory (2nd ed.). New York, NY: Atheneum.Google Scholar
  35. Feldman, J. A., & Sutherland, W. R. (1979). Rejuvenating experimental computer science: A report to the national science foundation and others. Communications of the ACM, 22(9), 497–502.CrossRefGoogle Scholar
  36. Feyerabend, P. (1993). Against method (3rd ed.). New York: Verso.Google Scholar
  37. Flamm, K. (1988). Creating the computer: Government, industry, and high technology. Washington, DC: Brookings Institution.Google Scholar
  38. Fletcher, P. (1995). The role of experiments in computer science. Journal of Systems and Software, 30(1–2), 161–163.CrossRefGoogle Scholar
  39. Forsythe, G. E. (1967). A university’s educational program in computer science. Communications of the ACM, 10(1), 3–11.CrossRefGoogle Scholar
  40. Forsythe, G. E. (1968). What to do till the computer scientist comes. American Mathematical Monthly, 75, 454–461.Google Scholar
  41. Freeman, P. A. (2008). Back to experimentation. Communications of the ACM, 51(1), 21–22.CrossRefGoogle Scholar
  42. Gal-Ezer, J., & Harel, D. (1998). What (else) should CS educators know? Communications of the ACM, 41(9), 77–84.CrossRefGoogle Scholar
  43. Galler, B. A. (1974). Letter from a past president: Distinction of computer science. Communications of the ACM, 17(6), 300.CrossRefGoogle Scholar
  44. Gelernter, D. (1999). The aesthetics of computing. London, UK: Phoenix.Google Scholar
  45. Glashow, S. (1992). The death of science? In R. J. Elvee (Ed.), The end of science? attack and defense. Lanham, MD: University Press of America.Google Scholar
  46. Glass, R. L. (1995). A structure-based critique of contemporary computing research. Journal of Systems and Software, 28(1), 3–7.CrossRefGoogle Scholar
  47. Goldweber, M., Impagliazzo, J., Bogoiavlenski, I. A., Clear, A. G., Davies, G., & Flack, H., et al. (1997). Historical perspectives on the computing curriculum. SIGCUE Outlook, 25(4), 94–111.CrossRefGoogle Scholar
  48. Graham, P. (2004). Hackers painters: Big ideas from the computer age. Sebastopol, CA: O’Reilly.Google Scholar
  49. Hamming, R. W. (1969). One man’s view of computer science. Journal of the ACM, 16(1), 3–12.CrossRefGoogle Scholar
  50. Harel, D. (1980). On folk theorems. Communications of the ACM, 23(7), 379–389.zbMATHCrossRefGoogle Scholar
  51. Hartmanis, J. (1981). Nature of computer science and its paradigms. Communications of the ACM, 24(6), 353–354.Google Scholar
  52. Hartmanis, J. (1993). Some observations about the nature of computer science. In R. K. Shyamasundar (Ed.), Foundations of software technology and theoretical computer science (Vol. 761, pp. 1–12). Berlin/Heidelberg, Germany: Springer.Google Scholar
  53. Hartmanis, J. (1994). Turing award lecture on computational complexity and the nature of computer science. Communications of the ACM, 37(10), 37–43.CrossRefGoogle Scholar
  54. Hempel, C. G. (1965). Aspects of scientific explanation and other essays in the philosophy of science. New York, NY: The Free Press.Google Scholar
  55. Hitchcock, C. (Ed.). (2004). Contemporary debates in philosophy of science. Oxford, UK: Blackwell Publishing.Google Scholar
  56. Holloway, C. M. (1995). Software engineering and epistemology. SIGSOFT Software Engineering Notes, 20(2), 20–21.CrossRefGoogle Scholar
  57. Kemeny, J. G. (1959). A philosopher looks at science. Princeton, NJ: Van Nost, Reinhold.Google Scholar
  58. Khalil, H., & Levy, L. S. (1978). The academic image of computer science. ACM SIGCSE Bulletin, 10(2), 31–33.CrossRefGoogle Scholar
  59. Kiikeri, M., & Ylikoski, P. (2004). Tiede tutkimuskohteena: Filosofinen johdatus tieteentutkimukseen. Helsinki, Finland: Gaudeamus.Google Scholar
  60. Knuth, D. E. (1972). Ancient Babylonian algorithms. Communications of the ACM, 15(7), 671–677.zbMATHMathSciNetCrossRefGoogle Scholar
  61. Knuth, D. E. (1974a). Computer programming as an art. Communications of the ACM, 17(12), 667–673.zbMATHMathSciNetCrossRefGoogle Scholar
  62. Knuth, D. E. (1974b). Computer science and its relation to mathematics. American Mathematical Monthly, 81, 323–343.zbMATHMathSciNetCrossRefGoogle Scholar
  63. Knuth, D. E. (1985). Algorithmic thinking and mathematical thinking. American Mathematical Monthly, 92, 170–181.zbMATHMathSciNetCrossRefGoogle Scholar
  64. Knuth, D. E. (2001). Things a computer scientist rarely talks about. Stanford, CA: CSLI Publications.zbMATHGoogle Scholar
  65. Krantz, S. G. (2002). Book review: “A new kind of science” by Stephen Wolfram. Bulletin of the American Mathematical Society, 40(1), 143–150.CrossRefGoogle Scholar
  66. Kuhn, T. (1996). The structure of scientific revolutions (3rd ed.). Chicago: The University of Chicago Press.Google Scholar
  67. Lakatos, I. (1976). Proofs and refutations: The logic of mathematical discovery J. Worrall & E. Zahar (Eds.), Cambridge, UK: Cambridge University Press.Google Scholar
  68. Lakatos, I. (1978). The methodology of scientific research programmes. In J. Worrall & G. Currie (Eds.), Philosophical papers (Vol. 1). Cambridge, UK: Cambridge University Press.Google Scholar
  69. Masterman, M. (1970). The nature of a paradigm. In I. Lakatos & A. Musgrave (Eds.), Criticism and the growth of knowledge (pp. 59–89). London, UK: Cambridge University Press.Google Scholar
  70. McCracken, D. D., Denning, P. J., & Brandin, D. H. (1979). An ACM executive committee position on the crisis in experimental computer science. Communications of the ACM, 22(9), 503–504.CrossRefGoogle Scholar
  71. McKee, G. (1995). Computer science or simply ’computics’? The open channel. Computer, 28(12), 136.CrossRefGoogle Scholar
  72. Minsky, M. L. (1979). Computer science and the representation of knowledge. In M. L. Dertouzos & J. Moses (Eds.), The computer age: A twenty-year view (pp. 392–421). Cambridge, MA: MIT Press.Google Scholar
  73. Moor, J. H. (1978). Three myths of computer science. The British Journal for the Philosophy of Science, 29, 213–222.CrossRefGoogle Scholar
  74. Nash, L. K. (1963). The nature of the natural sciences. Boston, MA: Little, Brown, and Co.Google Scholar
  75. von Neumann, J. (1975). First draft of a report on the EDVAC. In B. Randell (Ed.), The origins of digital computers: Texts and monographs in computer science (2nd ed., pp. 355–364). Heidelberg, Germany: Springer.Google Scholar
  76. Newell, A., Perlis, A. J., & Simon, H. A. (1967). Computer science. Science, 157(3795), 1373–1374.CrossRefGoogle Scholar
  77. Newell, A., & Simon, H. A. (1961). Computer simulation of human thinking. Science, 134(3495), 2011–2017.CrossRefGoogle Scholar
  78. Newell, A., & Simon, H. A. (1976). Computer science as empirical inquiry: Symbols and search. Communications of the ACM, 19(3), 113–126.MathSciNetCrossRefGoogle Scholar
  79. Ousterhout, J. K. (1981). More on experimental computer science and funding. Communications of the ACM, 24(8), 546–549.CrossRefGoogle Scholar
  80. Pickering, A. (1995). The mangle of practice: Time, agency, and science. Chicago: The University of Chicago Press.zbMATHGoogle Scholar
  81. Popper, K. (1934). Logik der Forschung. Tübingen, Germany: Mohr Siebeck GmbH Co.Google Scholar
  82. Popper, K. (1959). The logic of scientific discovery. London, UK: Routledge.zbMATHGoogle Scholar
  83. Post, E. L. (1936). Finite combinatory processes–formulation 1. The Journal of Symbolic Logic, 1(3), 103–105.zbMATHCrossRefGoogle Scholar
  84. Quine, W. V. O. (1980). From a logical point of view (2nd ed.). Cambridge, MA: Harvard University Press.Google Scholar
  85. Ralston, A., & Shaw, M. (1980). Curriculum ’78–Is computer science really that unmathematical? Communications of the ACM, 23(2), 67–70.CrossRefGoogle Scholar
  86. Rapaport, W. J. (2005). Philosophy of computer science: An introductory course. Teaching Philosophy, 28(4), 319–341.MathSciNetGoogle Scholar
  87. Rice, J. R., & Rosen, S. (2004). Computer sciences at Purdue University—1962 to 2000. Annals of the History of Computing, IEEE, 26(2), 48–61.MathSciNetCrossRefGoogle Scholar
  88. Rombach, D., & Seelisch, F. (2008). Formalisms in software engineering: Myths versus empirical facts. In B. Meyer, J. R. Nawrocki, & B. Walter (Eds.), Balancing agility and formalism in software engineering (Vol. 5082, pp. 13–25). Heidelberg, Germany: Springer.CrossRefGoogle Scholar
  89. Rosenbloom, P. S. (2004). A new framework for computer science and engineering. Computer, 37(11), 23–28.CrossRefGoogle Scholar
  90. Ross, P. E. (2003). 5 commandments (technology laws and rules of thumb). Spectrum, IEEE, 40(12), 30–35.CrossRefGoogle Scholar
  91. Russell, B. (1912). The problems of philosophy. Oxford, UK: Oxford University Press.zbMATHGoogle Scholar
  92. Searle, J. R. (1980). Minds, brains, and programs. The Behavioral and Brain Sciences, 3, 417–457.CrossRefGoogle Scholar
  93. Searle, J. R. (1990a). Is the brain a digital computer? Proceedings and Addresses of the American Philosophical Association, 64, 21–37.CrossRefGoogle Scholar
  94. Searle, J. R. (1990b). Is the brain’s mind a computer program? Scientific American, 262(1), 26–31.CrossRefGoogle Scholar
  95. Searle, J. R. (1996). The construction of social reality. England: Penguin Press.Google Scholar
  96. Shapiro, S. (2000). Thinking about mathematics: The philosophy of mathematics. New York, NY: Oxford University Press.zbMATHGoogle Scholar
  97. Shapiro, S. C. (2001). Computer science: The study of procedures. Retrieved 24 Dec 2010, from
  98. Simon, H. A. (1969). The sciences of the artificial (1st ed.). Cambridge, MA: MIT Press.Google Scholar
  99. Simon, H. A. (1981). The sciences of the artificial (2nd ed.). Cambridge, MA: MIT Press.Google Scholar
  100. Smith, B. C. (1998). On the origin of objects (MIT Paperback ed.). Cambridge, MA: MIT Press.Google Scholar
  101. de Solla Price, D. J. (1959). An ancient Greek computer. Scientific American, 200(6), 60–67.CrossRefGoogle Scholar
  102. Stewart, N. F. (1995). Science and computer science. ACM Computing Surveys, 27(1), 39–41.CrossRefGoogle Scholar
  103. Tedre, M. (2006). The development of computer science: A sociocultural perspective. Joensuu, Finland: University of Joensuu Press.Google Scholar
  104. Tedre, M. (2009). Computing as engineering. Journal of Universal Computer Science, 15(8), 1642–1658.Google Scholar
  105. Tedre, M., & Sutinen, E. (2008). Three traditions of computing: What educators should know. Computer Science Education, 18(3), 153–170.CrossRefGoogle Scholar
  106. Tedre, M., & Sutinen, E. (2009). Crossing the Newton-Maxwell gap: Convergences and contingencies. Spontaneous Generations: A Journal for the History and Philosophy of Science, 3(1), 195–212.CrossRefGoogle Scholar
  107. Tichy, W. F. (1998). Should computer scientists experiment more? Computer, 31(5), 32–40.MathSciNetCrossRefGoogle Scholar
  108. Tichy, W. F., Lukowicz, P., Prechelt, L., & Heinz, E. A. (1995). Experimental evaluation in computer science: A quantitative study. Journal of Systems and Software, 28(1), 9–18.CrossRefGoogle Scholar
  109. Turing, A. M. (1936). On computable numbers, with an application to the Entscheidungsproblem. Proceedings of the London Mathematical Aociety, 42(Series 2), 230–265.Google Scholar
  110. Vessey, I., Ramesh, V., & Glass, R. L. (2002). Research in information systems: An empirical study of diversity in the discipline and its journals. Journal of Management Information Systems, 19(2), 129–174.Google Scholar
  111. von Wright, G. H. (1971). Explanation and understanding. London, UK: Routledge and Kegan Paul.Google Scholar
  112. Wegner, P. (1976). Research paradigms in computer science. In Icse ’76: Proceedings of the 2nd international conference on software engineering (pp. 322–330). Los Alamitos, CA: IEEE Computer Society Press.Google Scholar
  113. Weiss, E. A., & Corley, H. P. T. (1958). Letters to the editor. Communications of the ACM, 1(4), 5.CrossRefGoogle Scholar
  114. Winston, P. (1977). Artificial intelligence. Reading, MA: Addison-Wesley.zbMATHGoogle Scholar
  115. Wittgenstein, L. (1958). Philosophical investigations (2nd bilingual ed.). Oxford, UK: Blackwell Publishers.Google Scholar
  116. Wolfram, S. (2002). A new kind of science. Champaign, IL: Wolfram Media.zbMATHGoogle Scholar
  117. Wood, H. M. (1995). Computer society celebrates 50 years. IEEE Annals of the History of Computing, 17(4), 6.CrossRefGoogle Scholar
  118. Zadeh, L. A. (1968). Computer science as a discipline. The Journal of Engineering Education, 58(8), 913–916.Google Scholar
  119. Zelkowitz, M. V., & Wallace, D. R. (1997). Experimental validation in software engineering. Information and Software Technology, 39(11), 735–743.CrossRefGoogle Scholar
  120. Zelkowitz, M. V., & Wallace, D. R. (1998). Experimental models for validating technology. Computer, 31(5), 23–31.CrossRefGoogle Scholar

Copyright information

© Springer Science+Business Media B.V. 2011

Authors and Affiliations

  1. 1.School of Computing, University of Eastern FinlandJoensuuFinland
  2. 2.Tumaini University, Iringa University CollegeIringaTanzania

Personalised recommendations