[https://web.stanford.edu/~ouster/cgi-bin/book.php%|%A Philosophy of Software Design], by [John Ousterhout] describes his general strategies for designing software. Ousterhout published a second edition in July 2021. For the benefit of those who bought the first edition, he has made the new material available for free download at [https://web.stanford.edu/~ouster/cgi-bin/aposd2ndEdExtract.pdf%|%book extract] ** Documentation ** [https://www.youtube.com/watch?v=bmSAYlu0NcY%|%A Philosophy of Software Design], video, Talks at Google, 2018-07-20: A presentation about the book. ** Strategies ** [Define Errors Out of Existence]: Various examples of this surface in Tcl. <> Book | Design | John Ousterhout