I met No Starch Press at PyCon 2012 where they were showing off chapters of their then upcoming book, Python For Kids by Jason R. Briggs. I was talking to them and expressed interest in getting a copy for the students in my department at the University. At the end of December the book started shipping and No Starch was kind enough to contact me and send me a copy.
I have to say that I think the book is great. It has 18 chapters and is around 300 pages, with the book split up into 3 parts. The first part is an introduction to Python 3, the syntax, as well as standard programming conventions like loops and variables and functions. It also goes into modules, turtle graphics (like the LOGO language of old), objects, classes, and the tkinter GUI library.
The second part gets to the fun activities you can do with Python like programming games! All the chapters in this part of the book are about using tkinter and Python to make a pong / arkanoid like game and it walks you through every step of the process.
The third part of the books builds upon the previous game, and teaches the reader how to make a simple platforming game, complete with sprites, animations, and events.
I REALLY liked this book. I tried to read a chapter a day, and I kept having to stop myself because I would say just one more chapter tonight… (I like to pace myself). I feel the author really captures what a kid would like to learn about and presents it in a manner that will keep them entertained, motivated, and interested.
I do have two very minor nitpicks about the book that stayed with me while I was reading it. The first one was the lack of explaining types. The author dives right into strings, and ints, and floats, but doesn’t explain what the difference is between them, or why you would use one over the other. I think a simple introduction and type chart would have made the first part a much easier read for a beginner. The second nitpick* is that the last part of the book ramps up the difficulty. You do get a finished game out of it, so the challenge isn’t for nothing, but I still found it to be a bit jarring after breezing through my reading of the earlier chapters.
Barring those two very minor issues, I think this is a fabulous book. For a programming book, it is on the inexpensive side, at around $20, and packs a good amount of material for the price. I recommend it.
*A good friend of mine told me that I’m not looking at this one through kid glasses. They would probably have no issue with the difficulty ramp up, and would in fact welcome the challenge.