Skip to content

Backward Compatibility as Trust Contract

APIs are promises - every published capability creates consumer dependency. Backward compatibility isn't just technical constraint but trust maintenance; breaking changes impose costs on every consumer simultaneously.

Tension Addressed

Stability vs. Evolution

Recognizable As

Additive-only changes, deprecated field retention, parallel old/new implementations, consumer migration support, breaking change communication

Canonical Sources

"Effective Java" - Bloch (2001, chapter on API design); Hyrum's Law

Transfers To

Library versioning, Operating system APIs, Hardware interfaces, Any public interface with external consumers

Hyrum's Law states: "With a sufficient number of users, every observable behavior becomes a depended-upon behavior." This means backward compatibility extends beyond documented contracts to actual behavior - a humbling constraint on evolution.