Since you are reading this blog I assume that you are a software developer, or more in general a "knowledge worker" as Peter Drucker refers to the person “who puts to work what he has between his hears rather than the brawn of his muscles or the skill of his hands” in his excellent book Effective Executive.

And if you try to keep up to date by reading books, blogs, listening to podcasts, etc... I sure don't have to tell you how difficult it is staying on top of new technologies, frameworks, languages which come out quicker and quicker. It’s sure impossible to keep up with everything.

Trying to come up with some new ideas on how tackle this issue, I have picked up the book Pragmatic Thinking and Learning: Refactor Your Wetware by Andy Hunt with high expectations, having loved The Pragmatic Programmer (see my review of that book here) where Andy Hunt was one of the two authors. And I must say that I have not been disappointed: Pragmatic Thinking and Learning is another great book.

Let’s have a quick look to the contents.

From Novice To Expert

The book first focuses on describing a few phases one goes through in his learning journey. The Dreyfus brothers have tried to formalize the steps to reach the expert status on a given skill (like practicing a sport or programming using a particular language) in the following way:

Novice : you start from here and for basically everything you have to do you need a "recipe".

: you start from here and for basically everything you have to do you need a "recipe". Advance Beginner : you now start trying things on your own, and need reference documentation (think of a list of API)

: you now start trying things on your own, and need reference documentation (think of a list of API) Competent : you have more initiative, can troubleshoot existing problems and solve new ones.

: you have more initiative, can troubleshoot existing problems and solve new ones. Proficient : at this stage you are more self-conscious of your own skill and want to understand the larger picture. This feedback is vital for your continuous improvement.

: at this stage you are more self-conscious of your own skill and want to understand the larger picture. This feedback is vital for your continuous improvement. Expert: at this stage you keep looking for better ways of doing things. You tend to work from intuition as opposed to a fixed set of rules and reason: you just ten to "feel" what's right in any given situation.

How Your Brain Works and How To Make The Best Use of It

The model put forward of your brain here is that of a "dual core" CPU. But the two halves don't work the same way:

L-Mode : this is your linear mode(traditionally associated with the left hemisphere): analytical, rational, verbal. This is perhaps the part of our brain that we are most familiar with in our day-to-day activities as software developers.

: this is your linear mode(traditionally associated with the left hemisphere): analytical, rational, verbal. This is perhaps the part of our brain that we are most familiar with in our day-to-day activities as software developers. R-Mode: intuitive, analogic, non-rational. These are the traits most commonly associated with artists.

This major section of the book explains why, as a knowledge worker, you need both modes to fully exploit your abilities, and gives tips on how to "shut up" the L-Mode for a while so that you can engage more the R-mode.

It then goes on to help you "debug" your thinking process, introducing several cognitive biases (things such as "self serving bias", "hawthorne effect", "false memory") and explains that many of your hard-coded thought patterns might just be due to the generation you belong to (are you in the Baby Boom Generation, in the Generation-X or in the Millennial Generation?).

Learn to Learn and Gain Experience

The book then concentrates on the best practices to learn:

You need to set SMART objectives for what you want to reach. Having a plan will keep you focused. You need to consider your skills as a knowledge portfolio. You need to diversify the areas you decide to invest in and dedicate some quality time to it regularly (which requires planning some time in advance: trying to find some free hours here and there simply doesn’t work…). You need to discover how you learn best. Do you prefer books and videos (visual) or podcasts (audio)? Consider joining a study group, Use advanced learning techniques such as SQ3R, or mind mapping. Teach to others. We learn best by doing: explore, play (= have fun) with the concepts, gets your hand dirty. Experiment and don’t be afraid to make mistakes, possibly in a non-stressful situation (you don’t want to have the pressure of a “real” work project).

Keep the Focus

The last part of the book has is somehow lighter and it’s dedicated to ways to increase your focus and attention. The author touches upon different topics from meditation to productivity tricks: if you have been exposed to productivity blogs such as Lifehacker you are like to be familiar with most of these already

Conclusions

This has really been a fun book to read and I whole-heartedly recommend it. I have gone back to it quite a few times already after reading it from cover to cover.

Each small chapter contains a “Next Actions” section with exercises and goals for you to try out and throughout the book there are tons of references if you are interested in a particular topic and want to dig more.

It used to be that all you needed to perform your job was “The C Programming Language”. That’s not the case any more.