43 of 44 people found the following review helpful
Could be confusing and frustrating for the complete programming novice,
This review is from: Head First Programming: A Learner's Guide to Programming Using the Python Language (Paperback)I like the Head First Books. I find them enjoyable and a lot of fun to work through. So I was looking forward to starting a hobby in programming by working through this book. Unfortunately I found this book to be both frustrating and confusing in places rather then enjoyable and rewarding.
The goal of the book is to use the Head First method of learning to teach the reader programming concepts using Python 3. HF Programming is very good in explaining programming concepts, however personally I had problems with some of the exercises it gives the reader. The reason I had problems with some of the exercises was I felt that the authors didn't explain how Python 3 worked in sufficient detail.
There are two main types of exercises in HF Programming, code completion and writing/modifying a program from scratch. In the code completion exercises the authors would present the reader with a program that was missing code segments. They would supply the code segments needed to complete the program at the bottom of the page. The reader had to pick the correct code segment and insert it into the missing line. The writing/modifying a program from scratch exercises would present the reader with a problem and then ask the reader to write/modify a Python 3 program to solve the problem.
I had no problem with the code completion exercises. Using the concepts taught in the book, and examining the code carefully, I was able to work though these exercises, just fine. However most of the time I found that I didn't have enough knowledge of how Python 3 worked to be able to complete the writing/modifying a program from scratch exercises. I found that I either had to do some research via Google, or look at the solution of the exercises to understand how to write the required program.
To be fair, researching via Google, and carefully going through the provided solution code, did teach me a lot. But personally I would have preferred to have had the required knowledge presented in the book before the exercises in numerous simple and clear example programs, but that's just me. Other readers may not have this problem.
To conclude, this is a good book that does meet it's objective in teaching programming concepts. However I found that it can be confusing and frustrating to work through in places.