Closing performance lesson: any intuition about what is fast or slow on a CPU will be wrong in 5–10 years as architectures change. The only correct way to optimize is to form a hypothesis, benchmark before, and benchmark after. Don't be afraid to try counterintuitive ideas like doing more work instead of less.