Sunday, December 22, 2024 Text is available under the CC BY-SA 3.0 licence.

Edsger W. Dijkstra

« All quotes from this author
 

The precious gift that this Turing Award acknowledges is Dijkstra's style: his approach to programming as a high, intellectual challenge; his eloquent insistence and practical demonstration that programs should be composed correct, not just debugged into correctness; and his illuminating perception of problems at the foundations of program design. He
--
M.D. Mcllroy (1972) at the presentation of the lecture on August 14, 1972, at the ACM Annual Conference in Boston, cited in E.G. Dijkstra (1972) "The Humble Programmer". 1972 ACM Turing Award Lecture. in: Communications of the ACM 15 (10), October 1972: pp. 859–866

 
Edsger W. Dijkstra

» Edsger W. Dijkstra - all quotes »



Tags: Edsger W. Dijkstra Quotes, Authors starting by D


Similar quotes

 

Programming languages on the whole are very much more complicated than they used to be: object orientation, inheritance, and other features are still not really being thought through from the point of view of a coherent and scientifically well-based discipline or a theory of correctness. My original postulate, which I have been pursuing as a scientist all my life, is that one uses the criteria of correctness as a means of converging on a decent programming language design—one which doesn’t set traps for its users, and ones in which the different components of the program correspond clearly to different components of its specification, so you can reason compositionally about it. [...] The tools, including the compiler, have to be based on some theory of what it means to write a correct program.

 
C. A. R. Hoare
 

But active programming consists of the design of new programs, rather than contemplation of old programs.

 
Niklaus Wirth
 

You see, some people have a talent for programming. At ten to thirteen years old, typically, they're fascinated, and if they use a program, they want to know: “How does it do this?” But when they ask the teacher, if it's proprietary, the teacher has to say: “I'm sorry, it's a secret, we can't find out.” Which means education is forbidden. A proprietary program is the enemy of the spirit of education. It's knowledge withheld, so it should not be tolerated in a school, even though there may be plenty of people in the school who don't care about programming, don't want to learn this. Still, because it's the enemy of the spirit of education, it shouldn't be there in the school.
But if the program is free, the teacher can explain what he knows, and then give out copies of the source code, saying: “Read it and you'll understand everything.” And those who are really fascinated, they will read it! And this gives them an opportunity to start to learn how to be good programmers.
To learn to be a good programmer, you'll need to recognize that certain ways of writing code, even if they make sense to you and they are correct, they're not good because other people will have trouble understanding them. Good code is clear code that others will have an easy time working on when they need to make further changes.
How do you learn to write good clear code? You do it by reading lots of code, and writing lots of code. Well, only free software offers the chance to read the code of large programs that we really use. And then you have to write lots of code, which means you have to write changes in large programs.
How do you learn to write good code for the large programs? You have to start small, which does not mean small program, oh no! The challenges of the code for large programs don't even begin to appear in small programs. So the way you start small at writing code for large programs is by writing small changes in large programs. And only free software gives you the chance to do that.

 
Richard M. Stallman
 

To me programming is more than an important practical art. It is also a gigantic undertaking in the foundations of knowledge.

 
Grace Hopper
 

To the designer of programming languages, I say: unless you can support the paradigms I use when I program, or at least support my extending your language into one that does support my programming methods, I don't need your shiny new languages. [...] To persuade me of the merit of your language, you must show me how to construct programs in it.

 
Robert W Floyd
© 2009–2013Quotes Privacy Policy | Contact