Reading notes: A Philosophy of Software Design, 2nd Edition

~11 minutes to read

A Philosophy of Software Design, 2nd Edition by John Osterhout beautifully covers the nature of complexity in software. It provides clear strategies to keep complexity as low as possible while giving real-world examples along the way from his own work (e.g., RAMCloud or the Tcl programming language). He also gathered, for instance, interesting sources of various designs for a GUI text editor from his students, highlighting essential points to keep in mind while designing software.