Procedure names should reflect what they do; function names should reflect what they return
When there is no type hierarchy you don't have to manage the type hierarchy.
Fancy algorithms are slow when N is small, and N is usually small.
Narrowness of experience leads to narrowness of imagination
A smart terminal is not a smartass terminal, but rather a terminal you can educate.
Rule 1. You can't tell where a program is going to spend its time. Bottlenecks occur in surprising places, so don't try to second guess and put in a speed hack until you've proven that's where the bottleneck is