A Philosophy of Software Design - Ousterhout, John. (Canada: Yaknyam Press, 2018)