[https://web.stanford.edu/~ouster/cgi-bin/book.php%|%A Philosophy of Software Design], by [John Ousterhout] describes Ousterhout's general strategies for designing software. ** 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