Notes on Simplicity
The most important design decisions are often the ones where you choose not to add something.
Complexity is sticky
Once something is in a system, it's very hard to remove. Every feature, every option, every abstraction has a carrying cost. It has to be understood, maintained and worked around.
Questions I ask myself
- Does this solve a problem someone actually has?
- Would I notice if this wasn't here?
- Am I adding this because it's useful or because it's interesting?
The goal
Simple doesn't mean minimal. It means every part earns its place. That's harder than it sounds, and I'm still learning it.