java hosting


granny.gif (11106 bytes) grannyhead.gif (2129 bytes)

In 1987, when I was a mite younger than I am today, I saw a list of "programming pearls" from the September 1985 issue of "Communications of the ACM". It was a huge list and I had to take time off from baking cookies for the grandkids to read it. Well, I picked a few out and added some that weren't on the list and ever since, I've always kept a printed version near where I work. Over the years I've added some and deleted some. Here is my current list:

    Any fool can write code that a computer can understand. Good programmers write code that humans can understand. (Fowler)

    Debug only code - comments can lie.

    If you have too many special cases, you are doing it wrong.

    Get your data structures correct first, and the rest of the program will write itself.

    Testing can show the presence of bugs, but not their absence.

    The first step in fixing a broken program is getting it to fail repeatedly.

    The fastest algorithm can frequently be replaced by one that is almost as fast and much easier to understand.

    The cheapest, fastest, and most reliable components of a computer system are those that aren't there.

    Good judgement comes from experience, and experience comes from bad judgement.

    Don't use the computer to do things that can be done efficiently by hand.

    [Thompson's Rule for first-time telescope makers] It is faster to make a four-inch mirror then a six-inch mirror than to make a six-inch mirror.

    If you lie to the computer, it will get you.

    Inside of every large program is a small program struggling to get out.