Recommended Book: Apprenticeship Patterns

5 commentsWritten on March 1st, 2011 by
Categories: Books

I'm not a fan of the Software Craftsmanship movement. Well, i do love the goals and the principles behind it but i kinda dislike the terminology they've chosen to try to spread those goals and principles. It has this elitist connotation to it which just rubs a lot of people the wrong way. Instead of trying to pull people in to the concept of continuous improvement, this whole "i'm an apprentice! i'm a journeyman! i'm a master!" thing just makes us look kinda stupid. It's just rather off-putting to many of the people we ought to try to reach. In fact, i wouldn't be surprised if this movement would've gotten more traction and less blog-o-drama if they'd simply called themselves the Continuous Improvement movement. No silly metaphors that don't hold up in this day and age, no titles to be earned, no roles to be played. Just people continuously trying to get better and helping others to improve as well. Which sort of captures the essence of it, no? Alas, Software Craftsmanship it is.

It is with that opinion in mind that i was at first hesitant to read Apprenticeship Patterns: Guidance for the Aspiring Software Craftsman. But when i glanced over the table of contents, i couldn't help but think that this is the kind of stuff i wished was available when i first started my career. So i figured i had to give it a shot. And i'm glad i did. It's a very quick read (only 168 pages) but it does have a lot of great advice for people who want to become better developers. The only downside about this book is that you have to continuously read about the whole apprentice/journeyman/master thing. If the authors had left out the craftsmanship-fantasy and background, they probably could've gotten the exact same amount of great advice in just about 100 pages.

But again, despite the issues i have with the craftsmanship terminology, the actual content of this book is fantastic. I've been applying a lot of those patterns over the past couple of years and they've benefited me greatly. And there are a couple of them that i really want to incorporate in my 'routine' as well. By reading this book, you'll either learn a lot about how you can make yourself better or if you feel like you're already there, you'll at least know of a reference to pass to other people you want to assist on their journey of Continuous Improvement. I'm sorry, i meant their apprenticeship. It really is a blueprint to becoming a Jedi. I'm sorry, i meant master craftsman. Or just a very valuable and great developer.

  • Joe

    All I picture with the craftsmanship nonsense are balding and slightly portly males pretending to be a blacksmith at a Renaissance Festival. Verily this explaineth whyfore there are so few wenches in IT.

  • http://redsquirrel.com/dave redsquirrel

    It’s great to hear you liked our book, Davy, and that you could find value in it despite the fact that it has so much craftsmanship-oriented material. The craftsmanship approach works for me, but it certainly doesn’t work for everyone. I like how Michael Feathers calls it the thing* of software development. It’s something that still needs exploring. In the meantime, some of us will call ourselves hackers, scientists, engineers, and craftsmen, based on what fits best.

    * http://michaelfeathers.typepad.com/michael_feathers_blog/2011/01/the-thing-of-software-development.html

  • Brevin

    I noticed you read a lot of books :)
    how can you remember so many things. like for me, If i don’t use some code (like ExpressionTree) offen, I will forget them soon :(

    • http://davybrion.com Davy Brion

      i don’t bother remembering details… i just try to make sure i understand what i read, and i try to remember what’s possible and how to retrieve that information later on if you actually need it

  • http://thezendev.com Dan Martin

    This post made me finally get around to reading the book and I’m glad I did. A quick and excellent read. This is another one of those books I wish I was forced to read while in college…assuming it would have existed then of course.