The 20th anniversary edition — still the best onboarding book for the craft.
A field guide to the habits of thought that separate durable software from disposable software. Hunt and Thomas treat programming as a craft with apprenticeship, tools, and taste — not just a set of algorithms.
The chapters I return to most are on orthogonality, reversibility, and the tracer-bullet approach to building systems. Each one reframes decisions I make every week.