Library · paper

Go To Statement Considered Harmful

Edsger W. Dijkstra
1968·Communications of the ACM

Source: https://www.cs.utexas.edu/users/EWD/ewd02xx/EWD215.PDF

One page that changed how software is written.

Dijkstra argued that unstructured jumps make programs impossible to reason about — and that the quality of a programmer's thinking is bounded by the control structures available.

The paper launched structured programming and established the principle that intellectual manageability is the primary constraint on software quality.

For product people: the earliest and most elegant example of the principle that constraints enable rather than limit creative work.

Every time a team adopts a convention that restricts freedom in order to gain clarity, they are applying Dijkstra's insight.