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.
Meaning of the quote
This quote is criticizing the programming language APL, saying it is an outdated mistake that has been perfected. Dijkstra believes APL is the language of the future but only for old-fashioned programming methods, and that it creates a new generation of coders who are not very skilled.
More quotes from Edsger Dijkstra
I mentioned the non-competitive spirit explicitly, because these days, excellence is a fashionable concept. But excellence is a competitive notion, and that is not what we are heading for: we are heading for perfection.
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.
Aim for brevity while avoiding jargon.
Programming is one of the most difficult branches of applied mathematics; the poorer mathematicians had better remain pure mathematicians.
Don’t compete with me: firstly, I have more experience, and secondly, I have chosen the weapons.
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.
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.
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.
There should be no such thing as boring mathematics.
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.
Object-oriented programming is an exceptionally bad idea which could only have originated in California.
Mathematicians are like managers – they want improvement without change.
The question of whether a computer can think is no more interesting than the question of whether a submarine can swim.
Elegance is not a dispensable luxury but a factor that decides between success and failure.
Teaching to unsuspecting youngsters the effective use of formal methods is one of the joys of life because it is so extremely rewarding.
Computer science is no more about computers than astronomy is about telescopes.
Perfecting oneself is as much unlearning as it is learning.
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.
Program testing can be used to show the presence of bugs, but never to show their absence!
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.
The ability of discerning high quality unavoidably implies the ability of identifying shortcomings.
If 10 years from now, when you are doing something quick and dirty, you suddenly visualize that I am looking over your shoulders and say to yourself: ‘Dijkstra would not have liked this’, well that would be enough immortality for me.
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.
The use of COBOL cripples the mind; its teaching should, therefore, be regarded as a criminal offense.
The lurking suspicion that something could be simplified is the world’s richest source of rewarding challenges.
Simplicity is prerequisite for reliability.