Hints and Principles for Computer System Design
Butler Lampson

TL;DR
This paper revisits foundational principles and goals for computer system design, emphasizing the STEADY criteria and AID techniques, with practical examples to guide system development.
Contribution
It introduces a comprehensive set of design goals and techniques from 1983, providing a structured framework for building better computer systems.
Findings
Proposes the STEADY goals for system design
Introduces the AID techniques for achieving design goals
Provides practical examples of applying principles
Abstract
This new long version of my 1983 paper suggests the goals you might have for your system -- Simple, Timely, Efficient, Adaptable, Dependable, Yummy (STEADY) -- and techniques for achieving them -- Approximate, Incremental, Divide & Conquer (AID). It also gives some principles for system design that are more than just hints, and many examples of how to apply the ideas.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
Hints and Principles for Computer System Design· youtube
Hints and Principles for Computer System Design· youtube
Taxonomy
TopicsDistributed systems and fault tolerance · Parallel Computing and Optimization Techniques · Real-Time Systems Scheduling
