Words of Wisdom

Here are a few quotes collected over the years from various sources.

On Systems Design and Programming

For every complex problem, there is a solution that is simple, neat, and wrong.
H. L. Menken

Those who do not understand Unix are condemned to reinvent it, poorly.
Henry Spencer Usenet signature, November 1987

Never struggle to decipher subtle code three times. Once might be a one-shot fluke, but if you find yourself having to figure it out a second time — because the first was too long ago and you've forgotten details — it is time to comment the code so that the third time will be relatively painless.
Henry Spencer

One of my most productive days was throwing away 1000 lines of code.
Ken Thompson

There are two ways of constructing a software design. One is to make it so simple that there are obviously no deficiencies; the other is to make it so complicated that there are no obvious deficiencies. The first method is far more difficult.
C. A. R. Hoare in The Emperor's Old Clothes, CACM February 1981

Never make the same mistake once.
— Lois Goldthwaite

The most effective debugging tool is still careful thought, coupled with judiciously placed print statements.
Brian W. Kernighan, Unix for Beginners, 1979

On Open Source Software

This is the great thing about open source software. If the old lead developer goes insane, you can always fork it, right?
Scott Richie on eVACS, July 30, 2004

On Computer Science

The big moment in a computer scientist's life is when you reach your 64th birthday, because then you're one million in binary.
Donald Knuth in his October 17, 2003 Computer Musings lecture on notation.