Incidentally, the earliest expression of this idea that I’ve seen is from a talk by Fischer Black [0] in 1963, published a year later in a volume on LISP [1]:
Programming style is not a matter of efficiency in a program. It is a matter of how easy it is to write or read a program, how easy it is to explain the program to someone else, how easy it is to figure out what the program does a year after you've written it; and above all, style is a matter of taste, of aesthetics, of what you think looks nice, of what you think is elegant.
Although style is mainly a matter of taste, a programmer with a "good" style will find his programs easy to write, easy to read, and easy to explain to others. ...
In particular, you may have acquired special programming tricks that you are very fond of, and that aren't used by other programmers, but that don't make your programs much more efficient. I urge you to stop using those tricks. As Samuel Johnson once said, "Read over your compositions, and when you meet with a passage which you think is particularly fine, strike it out."
In other words, make your style simple, not complicated, even though the complicated style may seem to have some abstract virtues. ...
0. Yes, this is the same Fischer Black of the Black-Scholes duo of financial fame. His PhD, informally supervised by Marvin Minsky, was on artificial intelligence. Myron Scholes, for that matter, was also a good programmer and made money programming for economics professors at Chicago while he did his PhD there.
Huh, I does appear to be in the preface of SICP. It does seem more of a Knuth-y quote though. I can see why it can be accidentally attributed to the literate programming guy, vs. the meta-circular interpreter guys.
- Donald Knuth