ABSTRACT
Software gets complicated fast. Most of good architecture and design practise is about trying to slow the rate at which software gets complicated. You can't stop it, it's a form of entropy. You can only slow it down and do your level best to stay on top.
Goal of Software development: sustainably minimise lead time to business impact
Productive is not the same as effective
Code is not the asset. Code is cost
What does it mean "understanding code"?
Code should be stabilised or killed off.
How long till half of the code-base changes in an unrecognisable way?
Good code can tell what it does, but not why?
Good code can tell what it does, but not the 3-4 failed attempts.
Little computers passing messages.