Edsger W. Dijkstra Quotes

Edsger Wybe Dijkstra was a Dutch systems scientist, programmer, software engineer, science essayist, and pioneer in computing science. A theoretical physicist by training, he worked as a programmer at the Mathematisch Centrum from 1952 to 1962. A university professor for much of his life, Dijkstra held the Schlumberger Centennial Chair in Computer Sciences at the University of Texas at Austin from 1984 until his retirement in 1999. He was a professor of mathematics at the Eindhoven University of Technology and a research fellow at the Burroughs Corporation .

One of the most influential figures of computing science's founding generation, Dijkstra helped shape the new discipline from both an engineering and a theoretical perspective. His fundamental contributions cover diverse areas of computing science, including compiler construction, operating systems, distributed systems, sequential and concurrent programming, programming paradigm and methodology, programming language research, program design, program development, program verification, software engineering principles, graph algorithms, and philosophical foundations of computer programming and computer science. Many of his papers are the source of new research areas. Several concepts and problems that are now standard in computer science were first identified by Dijkstra and/or bear names coined by him. As a foremost opponent of the mechanizing view of computing science, he refuted the use of the concepts of 'computer science' and 'software engineering' as umbrella terms for academic disciplines.

Until the mid-1960s computer programming was considered more an art than a scientific discipline. In Harlan Mills's words , "programming [before the 1970s] was regarded as a private, puzzle-solving activity of writing computer instructions to work as a program". In the late 1960s, computer programming was in a state of crisis. Dijkstra was one of a small group of academics and industrial programmers who advocated a new programming style to improve the quality of programs. Dijkstra, who had a background in mathematics and physics, was one of the driving forces behind the acceptance of computer programming as a scientific discipline. He coined the phrase "structured programming" and during the 1970s this became the new programming orthodoxy. His ideas about structured programming helped lay the foundations for the birth and development of the professional discipline of software engineering, enabling programmers to organize and manage increasingly complex software projects. As Bertrand Meyer noted, "The revolution in views of programming started by Dijkstra's iconoclasm led to a movement known as structured programming, which advocated a systematic, rational approach to program construction. Structured programming is the basis for all that has been done since in programming methodology, including object-oriented programming."The academic study of concurrent computing started in the 1960s, with Dijkstra credited with being the first paper in this field, identifying and solving the mutual exclusion problem. He was also one of the early pioneers of the research on principles of distributed computing. His foundational work on concurrency, semaphores, mutual exclusion, deadlock , finding shortest paths in graphs, fault-tolerance, self-stabilization, among many other contributions comprises many of the pillars upon which the field of distributed computing is built. Shortly before his death in 2002, he received the ACM PODC Influential-Paper Award in distributed computing for his work on self-stabilization of program computation. This annual award was renamed the Dijkstra Prize the following year, in his honor. As the prize, sponsored jointly by the ACM Symposium on Principles of Distributed Computing and the EATCS International Symposium on Distributed Computing , recognizes that "No other individual has had a larger influence on research in principles of distributed computing". Wikipedia  

✵ 11. May 1930 – 6. August 2002
Edsger W. Dijkstra photo

Works

Computing Science
Edsger W. Dijkstra
Edsger W. Dijkstra: 68   quotes 1   like

Famous Edsger W. Dijkstra Quotes

“How do we convince people that in programming simplicity and clarity —in short: what mathematicians call "elegance"”

are not a dispensable luxury, but a crucial matter that decides between success and failure?
1980s
Source: EWD648.

“The question of whether Machines Can Think… is about as relevant as the question of whether Submarines Can Swim.”

Dijkstra (1984) The threats to computing science http://www.cs.utexas.edu/users/EWD/transcriptions/EWD08xx/EWD898.html (EWD898).
1980s

Edsger W. Dijkstra: Trending quotes

“A programmer? But was that a respectable profession? For after all, what was programming? Where was the sound body of knowledge that could support it as an intellectually respectable discipline? I remember quite vividly how I envied my hardware colleagues, who, when asked about their professional competence, could at least point out that they knew everything about vacuum tubes, amplifiers and the rest, whereas I felt that, when faced with that question, I would stand empty-handed.”

Dijkstra (1972) The Humble Programmer http://www.cs.utexas.edu/users/EWD/transcriptions/EWD03xx/EWD340.html (EWD340).
1970s
Context: After having programmed for some three years, I had a discussion with A. van Wijngaarden, who was then my boss at the Mathematical Center in Amsterdam, a discussion for which I shall remain grateful to him as long as I live. The point was that I was supposed to study theoretical physics at the University of Leiden simultaneously, and as I found the two activities harder and harder to combine, I had to make up my mind, either to stop programming and become a real, respectable theoretical physicist, or to carry my study of physics to a formal completion only, with a minimum of effort, and to become....., yes what? A programmer? But was that a respectable profession? For after all, what was programming? Where was the sound body of knowledge that could support it as an intellectually respectable discipline? I remember quite vividly how I envied my hardware colleagues, who, when asked about their professional competence, could at least point out that they knew everything about vacuum tubes, amplifiers and the rest, whereas I felt that, when faced with that question, I would stand empty-handed. Full of misgivings I knocked on van Wijngaarden’s office door, asking him whether I could “speak to him for a moment”; when I left his office a number of hours later, I was another person. For after having listened to my problems patiently, he agreed that up till that moment there was not much of a programming discipline, but then he went on to explain quietly that automatic computers were here to stay, that we were just at the beginning and could not I be one of the persons called to make programming a respectable discipline in the years to come? This was a turning point in my life and I completed my study of physics formally as quickly as I could. One moral of the above story is, of course, that we must be very careful when we give advice to younger people; sometimes they follow it!

“As a result, the topic became – primarily in the USA – prematurely known as ‘computer science’ – which, actually, is like referring to surgery as ‘knife science’ – and it was firmly implanted in people’s minds that computing science is about machines and their peripheral equipment. Quod non”

Dijkstra (1986) On a cultural gap http://www.cs.utexas.edu/users/EWD/transcriptions/EWD09xx/EWD924.html (EWD 924).
1980s
Context: A confusion of even longer standing came from the fact that the unprepared included the electronic engineers that were supposed to design, build and maintain the machines. The job was actually beyond the electronic technology of the day, and, as a result, the question of how to get and keep the physical equipment more or less in working condition became in the early days the all-overriding concern. As a result, the topic became – primarily in the USA – prematurely known as ‘computer science’ – which, actually, is like referring to surgery as ‘knife science’ – and it was firmly implanted in people’s minds that computing science is about machines and their peripheral equipment. Quod non [Latin: "Which is not true"]. We now know that electronic technology has no more to contribute to computing than the physical equipment. We now know that programmable computer is no more and no less than an extremely handy device for realizing any conceivable mechanism without changing a single wire, and that the core challenge for computing science is hence a conceptual one, viz., what (abstract) mechanisms we can conceive without getting lost in the complexities of our own making.

“Program testing can be used to show the presence of bugs, but never to show their absence!”

Dijkstra (1970) " Notes On Structured Programming http://www.cs.utexas.edu/users/EWD/ewd02xx/EWD249.PDF" (EWD249), Section 3 ("On The Reliability of Mechanisms"), corollary at the end.
1970s
Variant: Program testing can be a very effective way to show the presence of bugs, but it is hopelessly inadequate for showing their absence.

Edsger W. Dijkstra Quotes

“It is not the task of the University to offer what society asks for, but to give what society needs.”

Dijkstra (2000), "Answers to questions from students of Software Engineering" http://www.cs.utexas.edu/~EWD/ewd13xx/EWD1305.PDF (EWD 1305).
2000s

“Thank goodness we don't have only serious problems, but ridiculous ones as well.”

Dijkstra (1982) "A Letter to My Old Friend Jonathan" (EWD475) p. 101 in [Dijkstra, Edsger, Selected Writings on Computing, Springer-Verlag, Berlin, 1982, 9780387906522]
1980s

“A convincing demonstration of correctness being impossible as long as the mechanism is regarded as a black box, our only hope lies in not regarding the mechanism as a black box.”

Dijkstra (1970) " Notes On Structured Programming http://www.cs.utexas.edu/users/EWD/ewd02xx/EWD249.PDF" (EWD249), Section 3 ("On The Reliability of Mechanisms"), p. 5.
1970s

“Simplicity is a great virtue but it requires hard work to achieve it and education to appreciate it. And to make matters worse: complexity sells better.”

Dijkstra (1984) On the nature of Computing Science http://www.cs.utexas.edu/users/EWD/transcriptions/EWD08xx/EWD896.html (EWD896).
1980s

“A picture may be worth a thousand words, a formula is worth a thousand pictures.”

Dijkstra (EWD1239: A first exploration of effective reasoning)
1990s

“Simplicity is prerequisite for reliability.”

1970s, How do we tell truths that might hurt? (1975)

“One moral of the above story is, of course, that we must be very careful when we give advice to younger people; sometimes they follow it!”

Dijkstra (1972) The Humble Programmer http://www.cs.utexas.edu/users/EWD/transcriptions/EWD03xx/EWD340.html (EWD340).
1970s
Context: After having programmed for some three years, I had a discussion with A. van Wijngaarden, who was then my boss at the Mathematical Center in Amsterdam, a discussion for which I shall remain grateful to him as long as I live. The point was that I was supposed to study theoretical physics at the University of Leiden simultaneously, and as I found the two activities harder and harder to combine, I had to make up my mind, either to stop programming and become a real, respectable theoretical physicist, or to carry my study of physics to a formal completion only, with a minimum of effort, and to become....., yes what? A programmer? But was that a respectable profession? For after all, what was programming? Where was the sound body of knowledge that could support it as an intellectually respectable discipline? I remember quite vividly how I envied my hardware colleagues, who, when asked about their professional competence, could at least point out that they knew everything about vacuum tubes, amplifiers and the rest, whereas I felt that, when faced with that question, I would stand empty-handed. Full of misgivings I knocked on van Wijngaarden’s office door, asking him whether I could “speak to him for a moment”; when I left his office a number of hours later, I was another person. For after having listened to my problems patiently, he agreed that up till that moment there was not much of a programming discipline, but then he went on to explain quietly that automatic computers were here to stay, that we were just at the beginning and could not I be one of the persons called to make programming a respectable discipline in the years to come? This was a turning point in my life and I completed my study of physics formally as quickly as I could. One moral of the above story is, of course, that we must be very careful when we give advice to younger people; sometimes they follow it!

“Testing shows the presence, not the absence of bugs”

Dijkstra (1969) J.N. Buxton and B. Randell, eds, Software Engineering Techniques, April 1970, p. 16. Report on a conference sponsored by the NATO Science Committee, Rome, Italy, 27–31 October 1969. http://homepages.cs.ncl.ac.uk/brian.randell/NATO/nato1969.PDF Possibly the earliest documented use of the famous quote.
1960s

“The use of COBOL cripples the mind; its teaching should, therefore, be regarded as a criminal offense.”

1970s, How do we tell truths that might hurt? (1975)

“My point today is that, if we wish to count lines of code, we should not regard them as "lines produced" but as "lines spent": the current conventional wisdom is so foolish as to book that count on the wrong side of the ledger.”

Dijkstra (1988) " On the cruelty of really teaching computing science http://www.cs.utexas.edu/users/EWD/transcriptions/EWD10xx/EWD1036.html (EWD1036).
1980s

“The competent programmer is fully aware of the strictly limited size of his own skull; therefore he approaches the programming task in full humility, and among other things he avoids clever tricks like the plague.”

Dijkstra (1972) The Humble Programmer http://www.cs.utexas.edu/users/EWD/transcriptions/EWD03xx/EWD340.html (EWD340).
1970s

“Write a paper promising salvation, make it a 'structured' something or a 'virtual' something, or 'abstract', 'distributed' or 'higher-order' or 'applicative' and you can almost be certain of having started a new cult.”

Dijkstra (1979) My hopes of computing science http://www.cs.utexas.edu/users/EWD/transcriptions/EWD07xx/EWD709.html (EWD 709).
1970s

“Several people have told me that my inability to suffer fools gladly is one of my main weaknesses.”

Dijkstra (1978) The pragmatic engineer versus the scientific designer http://www.cs.utexas.edu/users/EWD/transcriptions/EWD06xx/EWD690.html (EWD 690).
1970s

“The art of programming is the art of organizing complexity, of mastering multitude and avoiding its bastard chaos as effectively as possible.”

Dijkstra (1970) " Notes On Structured Programming http://www.cs.utexas.edu/users/EWD/ewd02xx/EWD249.PDF" (EWD249), Section 3 ("On The Reliability of Mechanisms"), p. 7.
1970s

“The problems of the real world are primarily those you are left with when you refuse to apply their effective solutions.”

Dijkstra (1988) " On the cruelty of really teaching computing science http://www.cs.utexas.edu/users/EWD/transcriptions/EWD10xx/EWD1036.html (EWD1036).
1980s

“On Our Inability To Do Much.”

Dijkstra (1972) "Structured Programming", Chapter title in O.J. Dahl, E.W. Dijkstra, and C.A.R. Hoare. Academic Press, 1972 ISBN 0122005503.
1970s

“When we had no computers, we had no programming problem either. When we had a few computers, we had a mild programming problem. Confronted with machines a million times as powerful, we are faced with a gigantic programming problem.”

Dijkstra (1986) Visuals for BP's Venture Research Conference http://www.cs.utexas.edu/users/EWD/transcriptions/EWD09xx/EWD963.html (EWD 963).
1980s

Similar authors

Herbert A. Simon photo
Herbert A. Simon 58
American political scientist, economist, sociologist, and p…
Frits Zernike photo
Frits Zernike 1
Dutch physicist
Jan Tinbergen photo
Jan Tinbergen 21
Dutch economist
Etty Hillesum photo
Etty Hillesum 28
Jewish diarist
Steve Jobs photo
Steve Jobs 150
American entrepreneur and co-founder of Apple Inc.
Richard Feynman photo
Richard Feynman 181
American theoretical physicist
Martin Lewis Perl photo
Martin Lewis Perl 9
American scientist
Jerome Isaac Friedman photo
Jerome Isaac Friedman 6
American physicist
Hans Bethe photo
Hans Bethe 2
German-American nuclear physicist
Douglas Adams photo
Douglas Adams 317
English writer and humorist