What I read

The Rise of Worse is Better

blog.acolyer.org / 18 September 2016

Simplicity: the design must be simple, both in implementation and interface. It is more important for the interface to be simple than the implementation.


Correctness: the design must be correct in all observable aspects. Incorrectness is simply not allowed.


Consistency: the design must not be inconsistent. A design is allowed to be slightly less simple and less complete to avoid inconsistency. Consistency is as important as correctness.


Completeness: the design must cover as many important situations as is practical. All reasonably expected cases must be covered. Simplicity is not allowed to overly reduce completeness.