Home / Books / Book Reviews / Book Review: Head First Python by Paul Barry

Book Review: Head First Python by Paul Barry

Please Share...Print this pageTweet about this on TwitterShare on Facebook0Share on Google+0Pin on Pinterest0Share on Tumblr0Share on StumbleUpon0Share on Reddit0Email this to someone

I’d love to be able to tell people that I’m a brilliant computer programmer. I’m fascinated by computing, and I work in IT. I worship Linus Torvalds (creator of the Linux kernel) like a god!

I’ve managed to teach myself HTML and Javascript over the past fourteen years or so, since I was a teenager. HTML can only create web documents and embed applets in different programming languages, and isn’t a programming language per se. But it prepared my brain for programming, and web design helped me learn a bit of Javascript.

Unfortunately, I can’t honestly call myself a computer programmer. But, if I work hard enough at learning, I can become one!


A lot of computer programmers say that Python is an excellent first programming language to learn. Python has lots of libraries and functions that can make programming easier, especially for newbies. Python uses a lot of common sense English, and it’s easy to read. Here’s some typical Python code, for example:

for each_item in blogcritics_article_example:

    if isinstance(each_item, list):

        for nested_item in each_item:




Other programming languages, such as C++, look much more complicated to newbies. The Python philosophy is all about making programming easier, and fun. Guido van Rossum named the language after Monty Python! Python is also an excellent programming language because it can be used to develop applications for all kinds of different platforms — Windows, Mac, Linux distributions, and even mobile phones running Android.

But, even with my background in IT and web design, and Python’s focus on usability, the prospect of learning Python greatly overwhelmed me. The first Python book I bought was a pocket reference book, and nothing in there made any sense to me. In fact, it kind of made my head hurt!

When Head First Python from O’Reilly entered the Blogcritics review item list, I jumped at the opportunity. I wondered, could this title actually make learning Python easy?

What sets Head First Python apart from other Python books and manuals is that it was designed with cognitive research in mind. The book is filled with handy charts and illustrations, a great help to me, as I’m a visual learner. Author Paul Barry filled the book with easily understandable language and an excellent sense of humor. The book also has a number of pencil and paper exercises. Research shows that when students write stuff down, it aids them with learning retention. It certainly helps me!

Even the table of contents is atypical. It’s broken down into “Table of Contents (Summary)”, which looks normal and boring, and “Table of Contents (the real thing)” which actually describes each chapter in plain English.

In pretty much any area of study, the most difficult part to learn is the foundation, the basics. But once one learns the basics of say, Calculus for example, learning more advanced Calculus becomes easier than learning the basics of Calculus when you knew nothing. Well, quite frankly, learning new computer programming languages is as overwhelming as learning Calculus is. But Head First Python made learning Python basics common sense!

One of the first things I did when I started reading the book is install IDLE, the integrated development environment that’s used in this book. An integrated development environment is just jargon for an application that can be used to program in Python. IDLE doesn’t come with the book, but it can be downloaded for free at Python.org for different operating systems. As I entered the code in IDLE as is shown in the book’s examples, it amazed me how the language behaved exactly as the book told me it would. It’s one thing to read about something, and another to actually do it. As I observed how Python and IDLE reacted, I learned hands-on how the technology actually works. It’s an experience no amount of reading complicated manuals can actually give you. I was amazed how intuitive the basics of Python became to me.

Now that I firmly grasp the basics, thanks to the cognitive research used in the book’s design, I’m ready to learn more advanced Python. The last chapter recommends several other Python books, including a couple of other titles from O’Reilly. Before Head First Python, those books would have confused me. But thanks to the book, I’m eager to learn more!

Powered by

About Kim Crawley