Hints and Principles for Computer System Design

  • Butler Lampson

In addition to the full version there is a short version (about half as long), at the Related link. The View link is to the version on ArXiv.

Publication | Related File

This new version of my 1983 paper suggests the goals you might have for your system—Simple, Timely, Efficient, Adaptable, Dependable, Yummy (STEADY)—and effective techniques for achieving them—Approximate, Incremental, Divide & Conquer (AID). It gives a few principles for system design that are more than just hints, and many examples of how to apply the hints and principles.