on complexity
described at an intuitive level, complexity is:
anything that makes it hard to do your job
- also see cognitive load associated with doing the work
- unknown unknowns:
anytime I have to do anything I have to read every line of code.
- the goal is to reduce the overall complexity of the system
- John is pro small incremental changes as you work in a codebase
if you take one thing (in attempt to reduce complexity) and push it to the extreme, you’ll probably end up in a bad place