I got into this type of design around two months into
the program, when my instructor gave me
Practical Object-Oriented Design In Ruby to read.
This book doesn't show me new tools to use; however, it
gives me a new way to view, think, and, above all,
design my code. After reading this book, I began working
on a personal side project called
Practicing OOD. For this project, I reread this book, which is
written for Ruby, and then rewrote the coding example in
Python. I also explain my reasons for doing so in my
commit statements.