All concepts

Principle of Least Astonishment

Law of Least Surprise · POLA · POLS

The notion that a component of a system should behave in a way that most users will expect it to behave; the behavior should not astonish or surprise users.

EverydayConcepts.io

Origin

The earliest documented use appeared in December 1967, when W. N. Holmes invoked the "Law of Least Astonishment" in the PL/I Bulletin to criticize inconsistencies in IBM's new programming language. The principle gained wider currency through the Unix philosophy in the 1970s and 1980s, and Eric S. Raymond formalized it as a core design tenet in The Art of Unix Programming (2003).

Everyday Use

When you press Ctrl+S, you expect "save" — not "send." When a door has a handle, you expect to pull it. The principle says: if your design surprises people, the design is wrong. It applies to software, physical products, and any system where a human expects one thing and gets another.

Updated February 22, 2026