Abstract
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.
Similar content being viewed by others
References
Arora, S., & Chazelle, B. (2005). Is the thrill gone? Communications of the ACM, 48(8), 31–33.
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.
Brooks, F. P., Jr. (1996). The computer scientist as toolsmith II. Communications of the ACM, 39(3), 61–68.
Bunge, M.(1998a). Philosophy of science: From explanation to justification (Rev. ed., Vol. 2). New Brunswick, NJ: Transaction Publishers.
Bunge, M. (1998b). Philosophy of science: From problem to theory (Rev. ed., Vol. 1). New Brunswick, NJ: Transaction Publishers.
Campbell-Kelly, M., & Aspray, W. (2004). Computer: A history of the information machine (2nd ed.). Oxford, UK: Westview Press.
Carnap, R. (1967). The logical structure of the world; and, pseudoproblems in philosophy. California: University of California Press.
Casti, J. L. (1989). Paradigms lost: Tackling the unanswered mysteries of modern science. New York, NY: Avon Books.
Ceruzzi, P. E. (2003). A history of modern computing (2nd ed.). Cambridge, MA: MIT Press.
Chalmers, A. F. (1999). What is this thing called science? (3rd ed.). Queensland, Australia: University of Queensland Press.
Church, A. (1936). An unsolvable problem of elementary number theory. American Journal of Mathematics, 58(2), 345–363.
Colburn, T. R. (2000). Philosophy and computer science. Armonk, NY: M.E. Sharpe.
Couvalis, G. (1997). The philosophy of science: Science and objectivity. London/Thousand Oaks/New Delhi: SAGE.
CSAB. (2006). Computing as a profession.
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.
Dennett, D. C. (1996). Darwin’s dangerous idea: Evolution and the meanings of life. New York, NY: Simon & Schuster.
Denning, P. J. (1980a). ACM president’s letter: On folk theorems, and folk myths. Communications of the ACM, 23(9), 493–494.
Denning, P. J. (1980b). ACM president’s letter: What is experimental computer science? Communications of the ACM, 23(10), 543–544.
Denning, P. J. (1981). ACM president’s letter: Performance analysis: Experimental computer science as its best. Communications of the ACM, 24(11), 725–727.
Denning, P. J. (2003). Great principles of computing. Communications of the ACM, 46(11), 15–20.
Denning, P. J. (2005). Is computer science science? Communications of the ACM, 48(4), 27–31.
Denning, P. J. (2007). Computing is a natural science. Communications of the ACM, 50(7), 13–18.
Denning, P. J., Chang, C., & CC2001 Joint Task Force. (2001, March). Computing curricula 2001: Computer science volume. pdf.
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.
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.
Denning, P. J., & Freeman, P. A. (2009). Computing’s paradigm. Communications of the ACM, 52(12), 28–30.
Denning, P. J., & Rosenbloom, P. S. (2009). Computing: The fourth great domain of science. Communications of the ACM, 52(9), 27–29.
Deutsch, D. (1997). The fabric of reality. London, UK: Penguin Books.
Dijkstra, E. W. (1972). The humble programmer. Communications of the ACM, 15(10), 859–866.
Dijkstra, E. W. (1974). Programming as a discipline of mathematical nature. American Mathematical Monthly, 81(6), 608–612.
Dijkstra, E. W. (1987). Mathematicians and computing scientists: The cultural gap. Abacus, 4(4), 26–31.
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.
Dodig-Crnkovic, G. (2003). Shifting the paradigm of philosophy of science: Philosophy of information and a new renaissance. Minds & Machines, 13(4), 521–536.
Duhem, P. (1977). The aim and structure of physical theory (2nd ed.). New York, NY: Atheneum.
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.
Feyerabend, P. (1993). Against method (3rd ed.). New York: Verso.
Flamm, K. (1988). Creating the computer: Government, industry, and high technology. Washington, DC: Brookings Institution.
Fletcher, P. (1995). The role of experiments in computer science. Journal of Systems and Software, 30(1–2), 161–163.
Forsythe, G. E. (1967). A university’s educational program in computer science. Communications of the ACM, 10(1), 3–11.
Forsythe, G. E. (1968). What to do till the computer scientist comes. American Mathematical Monthly, 75, 454–461.
Freeman, P. A. (2008). Back to experimentation. Communications of the ACM, 51(1), 21–22.
Gal-Ezer, J., & Harel, D. (1998). What (else) should CS educators know? Communications of the ACM, 41(9), 77–84.
Galler, B. A. (1974). Letter from a past president: Distinction of computer science. Communications of the ACM, 17(6), 300.
Gelernter, D. (1999). The aesthetics of computing. London, UK: Phoenix.
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.
Glass, R. L. (1995). A structure-based critique of contemporary computing research. Journal of Systems and Software, 28(1), 3–7.
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.
Graham, P. (2004). Hackers painters: Big ideas from the computer age. Sebastopol, CA: O’Reilly.
Hamming, R. W. (1969). One man’s view of computer science. Journal of the ACM, 16(1), 3–12.
Harel, D. (1980). On folk theorems. Communications of the ACM, 23(7), 379–389.
Hartmanis, J. (1981). Nature of computer science and its paradigms. Communications of the ACM, 24(6), 353–354.
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.
Hartmanis, J. (1994). Turing award lecture on computational complexity and the nature of computer science. Communications of the ACM, 37(10), 37–43.
Hempel, C. G. (1965). Aspects of scientific explanation and other essays in the philosophy of science. New York, NY: The Free Press.
Hitchcock, C. (Ed.). (2004). Contemporary debates in philosophy of science. Oxford, UK: Blackwell Publishing.
Holloway, C. M. (1995). Software engineering and epistemology. SIGSOFT Software Engineering Notes, 20(2), 20–21.
Kemeny, J. G. (1959). A philosopher looks at science. Princeton, NJ: Van Nost, Reinhold.
Khalil, H., & Levy, L. S. (1978). The academic image of computer science. ACM SIGCSE Bulletin, 10(2), 31–33.
Kiikeri, M., & Ylikoski, P. (2004). Tiede tutkimuskohteena: Filosofinen johdatus tieteentutkimukseen. Helsinki, Finland: Gaudeamus.
Knuth, D. E. (1972). Ancient Babylonian algorithms. Communications of the ACM, 15(7), 671–677.
Knuth, D. E. (1974a). Computer programming as an art. Communications of the ACM, 17(12), 667–673.
Knuth, D. E. (1974b). Computer science and its relation to mathematics. American Mathematical Monthly, 81, 323–343.
Knuth, D. E. (1985). Algorithmic thinking and mathematical thinking. American Mathematical Monthly, 92, 170–181.
Knuth, D. E. (2001). Things a computer scientist rarely talks about. Stanford, CA: CSLI Publications.
Krantz, S. G. (2002). Book review: “A new kind of science” by Stephen Wolfram. Bulletin of the American Mathematical Society, 40(1), 143–150.
Kuhn, T. (1996). The structure of scientific revolutions (3rd ed.). Chicago: The University of Chicago Press.
Lakatos, I. (1976). Proofs and refutations: The logic of mathematical discovery J. Worrall & E. Zahar (Eds.), Cambridge, UK: Cambridge University Press.
Lakatos, I. (1978). The methodology of scientific research programmes. In J. Worrall & G. Currie (Eds.), Philosophical papers (Vol. 1). Cambridge, UK: Cambridge University Press.
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.
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.
McKee, G. (1995). Computer science or simply ’computics’? The open channel. Computer, 28(12), 136.
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.
Moor, J. H. (1978). Three myths of computer science. The British Journal for the Philosophy of Science, 29, 213–222.
Nash, L. K. (1963). The nature of the natural sciences. Boston, MA: Little, Brown, and Co.
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.
Newell, A., Perlis, A. J., & Simon, H. A. (1967). Computer science. Science, 157(3795), 1373–1374.
Newell, A., & Simon, H. A. (1961). Computer simulation of human thinking. Science, 134(3495), 2011–2017.
Newell, A., & Simon, H. A. (1976). Computer science as empirical inquiry: Symbols and search. Communications of the ACM, 19(3), 113–126.
Ousterhout, J. K. (1981). More on experimental computer science and funding. Communications of the ACM, 24(8), 546–549.
Pickering, A. (1995). The mangle of practice: Time, agency, and science. Chicago: The University of Chicago Press.
Popper, K. (1934). Logik der Forschung. Tübingen, Germany: Mohr Siebeck GmbH Co.
Popper, K. (1959). The logic of scientific discovery. London, UK: Routledge.
Post, E. L. (1936). Finite combinatory processes–formulation 1. The Journal of Symbolic Logic, 1(3), 103–105.
Quine, W. V. O. (1980). From a logical point of view (2nd ed.). Cambridge, MA: Harvard University Press.
Ralston, A., & Shaw, M. (1980). Curriculum ’78–Is computer science really that unmathematical? Communications of the ACM, 23(2), 67–70.
Rapaport, W. J. (2005). Philosophy of computer science: An introductory course. Teaching Philosophy, 28(4), 319–341.
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.
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.
Rosenbloom, P. S. (2004). A new framework for computer science and engineering. Computer, 37(11), 23–28.
Ross, P. E. (2003). 5 commandments (technology laws and rules of thumb). Spectrum, IEEE, 40(12), 30–35.
Russell, B. (1912). The problems of philosophy. Oxford, UK: Oxford University Press.
Searle, J. R. (1980). Minds, brains, and programs. The Behavioral and Brain Sciences, 3, 417–457.
Searle, J. R. (1990a). Is the brain a digital computer? Proceedings and Addresses of the American Philosophical Association, 64, 21–37.
Searle, J. R. (1990b). Is the brain’s mind a computer program? Scientific American, 262(1), 26–31.
Searle, J. R. (1996). The construction of social reality. England: Penguin Press.
Shapiro, S. (2000). Thinking about mathematics: The philosophy of mathematics. New York, NY: Oxford University Press.
Shapiro, S. C. (2001). Computer science: The study of procedures. Retrieved 24 Dec 2010, from http://www.cse.buffalo.edu/~shapiro/Papers/whatiscs.pdf
Simon, H. A. (1969). The sciences of the artificial (1st ed.). Cambridge, MA: MIT Press.
Simon, H. A. (1981). The sciences of the artificial (2nd ed.). Cambridge, MA: MIT Press.
Smith, B. C. (1998). On the origin of objects (MIT Paperback ed.). Cambridge, MA: MIT Press.
de Solla Price, D. J. (1959). An ancient Greek computer. Scientific American, 200(6), 60–67.
Stewart, N. F. (1995). Science and computer science. ACM Computing Surveys, 27(1), 39–41.
Tedre, M. (2006). The development of computer science: A sociocultural perspective. Joensuu, Finland: University of Joensuu Press.
Tedre, M. (2009). Computing as engineering. Journal of Universal Computer Science, 15(8), 1642–1658.
Tedre, M., & Sutinen, E. (2008). Three traditions of computing: What educators should know. Computer Science Education, 18(3), 153–170.
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.
Tichy, W. F. (1998). Should computer scientists experiment more? Computer, 31(5), 32–40.
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.
Turing, A. M. (1936). On computable numbers, with an application to the Entscheidungsproblem. Proceedings of the London Mathematical Aociety, 42(Series 2), 230–265.
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.
von Wright, G. H. (1971). Explanation and understanding. London, UK: Routledge and Kegan Paul.
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.
Weiss, E. A., & Corley, H. P. T. (1958). Letters to the editor. Communications of the ACM, 1(4), 5.
Winston, P. (1977). Artificial intelligence. Reading, MA: Addison-Wesley.
Wittgenstein, L. (1958). Philosophical investigations (2nd bilingual ed.). Oxford, UK: Blackwell Publishers.
Wolfram, S. (2002). A new kind of science. Champaign, IL: Wolfram Media.
Wood, H. M. (1995). Computer society celebrates 50 years. IEEE Annals of the History of Computing, 17(4), 6.
Zadeh, L. A. (1968). Computer science as a discipline. The Journal of Engineering Education, 58(8), 913–916.
Zelkowitz, M. V., & Wallace, D. R. (1997). Experimental validation in software engineering. Information and Software Technology, 39(11), 735–743.
Zelkowitz, M. V., & Wallace, D. R. (1998). Experimental models for validating technology. Computer, 31(5), 23–31.
Acknowledgments
This research was funded by the Academy of Finland grant #132572.
Author information
Authors and Affiliations
Corresponding author
Additional information
The author would like to thank the anonymous reviewers for their valuable comments.
Rights and permissions
About this article
Cite this article
Tedre, M. Computing as a Science: A Survey of Competing Viewpoints. Minds & Machines 21, 361–387 (2011). https://doi.org/10.1007/s11023-011-9240-4
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11023-011-9240-4