Overview

Hyrum’s Law states that with a sufficient number of users of an API, it does not matter what you promise in the contract: all observable behaviors of the system will be depended on by somebody. Named after Hyrum Wright (Google), it is the practical engineering equivalent of entropy — it can be mitigated but never eradicated. The implication for API and library maintainers is that any change, however small, will eventually break some user, because observable behavior and documented contract are not the same thing.

With a sufficient number of users of an API, it does not matter what you promise in the contract: all observable behaviors of your system will be depended on by somebody.

Consequences for software maintenance

Relationship to API design

Resources