Tesler's Law
For any system, there is a certain amount of complexity that cannot be reduced. This complexity must be handled by either the system or the user.
When to Use
Minimize user complexity
Whenever possible, handle complexity in the system rather than requiring users to manage it.
Simplify user-facing interfaces
Hide system complexity behind simple, intuitive interfaces.
Accept necessary complexity
Recognize that some complexity is inherent and cannot be eliminated, only moved between the system and the user.
When to Avoid
Don't oversimplify at the cost of functionality
While reducing user complexity is good, don't remove necessary functionality or make the system less capable.
Origin
Tesler's Law, also known as the Law of Conservation of Complexity, was articulated by Larry Tesler, a computer scientist who worked at Xerox PARC and Apple. He observed that complexity in a system is constant—it can be moved around but not eliminated. The key insight is that designers should handle as much complexity as possible in the system, leaving users with the simplest possible interface.