October 2004
Intermediate to advanced
240 pages
6h 22m
English
Fools ignore complexity. Pragmatists suffer it. Some can avoid it. Geniuses remove it.
—Alan Perlis
But I also knew, and forgot, Hoare’s dictum that premature optimization is the root of all evil in programming.
—Donald Knuth, The Errors of TeX [Knuth89]
It’s difficult to fully separate Design Style and Coding Style. We have tried to leave to the next section those Items that generally crop up when actually writing code.
This section focuses on principles and practices that apply more broadly than just to a particular class or function. A classic case in point is the balance among simplicity and clarity (Item 6), avoiding premature optimization (Item 8), and avoiding premature pessimization (Item 9). Those three Items apply, not ...