on simplicity
Simple is not the same as easy. Easy means low effort to do now. Simple means low cognitive load to understand later.
The easiest solution is often not the simplest. Copy-pasting is easy. The right abstraction takes thought.
Complexity accumulates in small increments. Each individual decision seems reasonable. The system as a whole becomes something nobody fully understands.
Fighting complexity is active work. It means removing things, questioning whether the thing you’re about to add is necessary, and preferring the solution with fewer moving parts even when it’s less clever.
Clever code is a liability. Simple code is an asset.