Appendix. Annotated Reading List and References

Alexander, Christopher. Notes on the Synthesis of Form. Cambridge: Harvard University Press, 1964.

---. The Timeless Way of Building. New York: Oxford University Press, 1979.

Ball, Philip. Branches: Nature’s Patterns. New York: Oxford University Press, 2011.

---. Flow: Nature’s Patterns. New York: Oxford University Press, 2011.

---. Shapes: Nature’s Patterns. New York: Oxford University Press, 2011.

Beck, Kent. Smalltalk Best Practice Patterns. New York: Pearson Education, 1997.

---. Implementation Patterns. Upper Saddle River: Addison-Wesley, 2007.

Feathers, Michael. Working Effectively with Legacy Code. Upper Saddle River: Pearson Education, 2004.

Fowler, Martin. Refactoring: Improving the Design of Existing Code. Boston: Addison-Wesley, 1999.

Hanson, Chris, and Gerald Jay Sussman. Software Design for Flexibility. Cambridge: MIT Press, 2021.

Lemaire, Maude. Refactoring at Scale. Sebastopol: O’Reilly Media, 2021.

Mollison, B.C. Permaculture 1. London: Transworld Publishers, 1988.

Myers, Glenford J. Composite/Structured Design. New York: Van Nostrand Reinhold, 1978.

Norman, Don. The Design of Everyday Things. New York: Basic Books, 2013.

Normand, Eric. Grokking Simplicity. Shelter Island: Manning, 2021.

Ousterhout, John. A Philosophy of Software Design. Palo Alto: Yaknyam Press, 2018.

Page-Jones, Meilir. What Every Programmer Should Know About Object-Oriented Design. New York: Dorset House, 1995.

Parnas, David Lorges. Software Fundamentals: Collected Papers by David L. Parnas. Edited by Daniel M. Hoffman and David M. Weiss. Boston: Addison-Wesley Professional, 2001.

Petre, Marian, and Andre Van Der Hoek. Software Design Decoded. Cambridge: MIT Press, 2016.

Seemann, Mark. Code That Fits in Your Head. Boston: Addison-Wesley Professional, 2021.

Weinberg, Gerald M. The Psychology of Computer Programming. New York: Dorset House, 1998.

Yourdon, Edward. Techniques of Program Structure and Design. Upper Saddle River: Prentice Hall, 1975.

Yourdon, Edward, and Larry L. Constantine. Structured Design. Upper Saddle River: Prentice Hall, 1979.