Edsger Dijkstra Quotes.

Are you quite sure that all those bells and whistles, all those wonderful facilities of your so called powerful programming languages, belong to the solution set rather than the problem set?

The lurking suspicion that something could be simplified is the world’s richest source of rewarding challenges.

Aim for brevity while avoiding jargon.

Computer science is no more about computers than astronomy is about telescopes.

Programming in Basic causes brain damage.

The question of whether computers can think is like the question of whether submarines can swim.

The art of programming is the art of organizing complexity.

The purpose of abstraction is not to be vague, but to create a new semantic level in which one can be absolutely precise.

About the use of language: it is impossible to sharpen a pencil with a blunt axe. It is equally vain to try to do it with ten blunt axes instead.

The students that, like the wild animal being prepared for its tricks in the circus called ‘life’, expects only training as sketched above, will be severely disappointed: by his standards he will learn next to nothing.

Why has elegance found so little following? That is the reality of it. Elegance has the disadvantage, if that’s what it is, that hard work is needed to achieve it and a good education to appreciate it.

The ability of discerning high quality unavoidably implies the ability of identifying shortcomings.

The question of whether a computer can think is no more interesting than the question of whether a submarine can swim.

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

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?

Mathematicians are like managers – they want improvement without change.

The competent programmer is fully aware of the limited size of his own skull. He therefore approaches his task with full humility, and avoids clever tricks like the plague.

Teaching COBOL ought to be regarded as a criminal act.

It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration.

APL is a mistake, carried through to perfection. It is the language of the future for the programming techniques of the past: it creates a new generation of coding bums.

Programming is one of the most difficult branches of applied mathematics; the poorer mathematicians had better remain pure mathematicians.

The traditional mathematician recognizes and appreciates mathematical elegance when he sees it. I propose to go one step further, and to consider elegance an essential ingredient of mathematics: if it is clumsy, it is not mathematics.

Many mathematicians derive part of their self-esteem by feeling themselves the proud heirs of a long tradition of rational thinking; I am afraid they idealize their cultural ancestors.

Simplicity is prerequisite for reliability.

Much of the excitement we get out of our work is that we don’t really know what we are doing.

Too few people recognize that the high technology so celebrated today is essentially a mathematical technology.

If you want more effective programmers, you will discover that they should not waste their time debugging, they should not introduce the bugs to start with.

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

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.

Elegance is not a dispensable luxury but a factor that decides between success and failure.