Lessons from two decades of writing bad code
summary
Shows concrete fixes and experiments: reads docs and switches from naive exit to std::abort to get a crash dump; uses Compiler Explorer and assembly reading for real compiler insight; recommends capture‑the‑flag practice via CTF Time to learn reverse engineering. Demonstrates a bidirectional linked‑list scan that runs 1.9× faster, a search that’s 2× faster and a four‑way approach giving ~4× speedup, compares exception vs optional assembly costs, and builds small testable libraries with try_pop-style APIs.
AI-written summary · about
chapters (8)
- 0:00Introduction and journey
- 0:52Agenda and philosophy
- 3:20Diving deep into documentation
- 6:47Learning assembly
- 10:01Rethinking exceptions
- 17:57Performance and data locality
- 27:58Software architecture principles
- 30:57Q&A and closing








