A Philosophy of Software Design, 2nd Edition by John Ousterhout is a small book with a large target: the everyday design judgment that determines whether code stays understandable after the original author moves on to the next problem.
That sounds modest until you remember how much software work is not …