A small group of us at work are still making our way through the O’Reilly book Head First Design Patterns. We’ve all been very excited to apply what we’ve learned, even after the very first pattern. They’re thought provoking, fun, interesting, and powerful. Our application design mojo has increased already, even when not using a pattern because we’ve learned a lot of the why as well as the how.
I wanted to start checking out more patterns because I was jazzed, so I borrowed the book which has greatly helped (started?) the design-patterns revolution – Design Patterns: Elements of Reusable Object Oriented Software written by “The Gang of Four”.
To make a long story short, it is a very dry, un-inspiring, un-appealing textbook. It doesn’t engage the senses and is devoid of personality. I even had trouble bridging the information in this book with what I had already learned in my study group, and I thought I knew the patterns pretty well. It’s really awful.
Why are the books so different? In the Head Start introduction they listed examples of things they did to aid learning like using fun pictures, emotional content, humor, conversational style, content to work both sides of the brain, and even considering different learning styles – ideas borrowed from current findings from learning research.
This all comes down to factoring in the human element, similar to what you would do when working on the user experience and usability for a web site, etc. The extra thought done up front has huge benefits. In this case we learn with half the effort and have fun while doing it. It doesn’t really feel like learning and it leaves us more time to do actual programming.