How to Think Like a Programmer
summary
Argues that programming is model-building, not typing: replace ad‑hoc log-parsing and baked‑in dictionary fields with a concrete retry object that stores job_id, failure reason and timestamps; wrap loose data in a notification object instead of passing raw maps; use an enum for states to make transitions explicit; practice thought audits (what did I expect, what happened, what did I assume) and short test–refine loops so models surface blind spots and become testable, composable, and debuggable.
AI-written summary · about
chapters (8)
- 0:00Introduction
- 1:30Modeling problems
- 4:42Broken models cause fires
- 6:27Map vs territory
- 8:12Naming shapes models
- 10:21Clarity via naming and tests
- 12:24Debugging thought
- 14:07Iterate to refine








