Complexity
The Programmers’ Credo: We do these things not because they are easy, but because we thought they were going to be easy.
The key to performance is elegance, not battalions of special cases.
— Jon Bentley and Doug McIlroy
First you learn the value of abstraction. Then you learn the cost of abstraction. Then you’re ready to engineer.