In my previous post, The Wisdom of Programming Quotes, I called out some quotes that look good on the surface, but turn out to promote the wrong ideas about software development. I have also posted some of my favorite programming qoutes in the past. But I thought I would list a few more good ones.
The Craft of Coding
“The act of describing a program in unambiguous detail and the act of programming are one and the same.” — Kevlin Henney
“Much of the essence of building a program is in fact the debugging of the specification.” — Fred Brooks
“A common fallacy is to assume authors of incomprehensible code will be able to express themselves clearly in comments.” — Kevlin Henney
“Bad programmers worry about the code. Good programmers worry about data structures and their relationships.” — Linus Torvalds
“Give someone a program, you frustrate them for a day; teach them how to program, you frustrate them for a lifetime.” — David Leinweber
“Debugging is like being the detective in a crime movie where you are also the murderer.” — @fortes
– What do we want?
– When do we want it?
– Fewer race conditions!
Programming Languages and Systems
“Dynamic typing: The belief that you can’t explain to a computer why your code works, but you can keep track of it all in your head.” — @chris__martin
“Unix will give you enough rope to shoot yourself in the foot. If you didn’t think rope would do that, you should have read the man page.” — @mhoye
“If you put a million monkeys on a million keyboards, one of them will eventually write a Java program. The rest of them will write Perl programs.”
“When your hammer is C++, everything begins to look like a thumb.” — Steve Haflich
“C is memory with syntactic sugar.” — Dennis Kubes
“A distributed system is one in which the failure of a computer you didn’t even know existed can render your own computer unusable.” — Leslie Lamport
“Sufficiently advanced abstractions are indistinguishable from obfuscation.” — @raganwald
“Sufficiently advanced trolling is indistinguishable from thought leadership.” — Hall’s Law
“Any sufficiently advanced bug is indistinguishable from a feature” — R. Kulawiec
“Any sufficiently advanced incompetence is indistinguishable from malice” — Grey’s Law
“Should array indices start at 0 or 1? My compromise of 0.5 was rejected without, I thought, proper consideration.” — Stan Kelly-Bootle
[The common definition of estimate is] “An estimate is the most optimistic prediction that has a non-zero probability of coming true” . . . Accepting this definition leads irrevocably toward a method called what’s-the-earliest-date-by-which-you-can’t-prove-you-won’t-be-finished estimating.
Tom DeMarco (1982)