I enjoyed reading Apprenticeship Patterns so much I decided to make a book it references heavily — Mastery — my new train reading.

Let me just preface this by saying I don’t agree with everything George Leonard says. He’s prone to reductive tangents on the evils of American culture and biologically dubious homeostasis analogies. But that being said, I’m really enjoying the book and feel that I’m reading it at the ideal moment.

One of Leonards primary claims is that the curve of lifelong learning is shaped like this:

Skill spikes are followed by drops in ability and longer periods of apparent stasis called plateaus. The spikes represent times when practice solidifies into capacity, and new skills are now at the learner’s disposal. The rational for the post-spike drop off is that, in order to keep learning, you need to reach beyond your current comfortable skills into territory where you are again a beginner. During the ensuing plateau, foundations for later ability are built. Though it may seem that no progress is being made, these periods are crucial for new skill acquisition.

I almost just got through a whole post without talking about Java struggles, so let me take care of that really quick: this is absolutely how I feel about switching to Java! I spent about a year and a half building competence in Ruby, and have now sacrificed my comfort to acquire Java skills, which will push my skill as a programmer past what I could have achieved with an understanding of one language alone. Thinking about the past week in terms of this graph helps put things in perspective, as does the incremental progress I can see when I step back from my day’s work and evaluate what I’ve accomplished.