Simple and Predictable
There are two ways of constructing a software design: one way is to make it so simple that there are obviously no deficiencies, and the other way is to make it so complicated that there are no obvious deficiencies. The first method is far more difficult. – C.A.R. Hoare
To make a product feel simple, every time a person takes a particular action, they should see the same result. That predictability means the user always understands their place in a product.
There’s an added bonus here: not only is predictability key to simplicity, predictability is also a substitute for control.
A tool should strive for
- orthogonality - single entry and exit point with no side effects
- predictability - the user can intuit what will happen when it is used
- simplicity - the user can hold the majority of use cases in their head, referring to a manual for the edge cases if necessary
Last modified: 202212070107