Hello, World! Computer Programming for Kids and Other Beginners by Warren and Carter Sande is an introduction to programming in general (and Python specifically) aimed at pre-teens or young teens.
Although the book is designed for a young audience, it is not condescending as many kids books tend to be so it remains readable by adults who need a very basic text on how computer programs work. And by “basic” I mean from the ground up. The book covers using an editor to create and modify program files, numbers, strings, variables, branching, and looping. It doesn’t stop with basic topics, though. By the mid-point of the book, the authors have built up to the point where introducing PyGame and graphics programming isn’t a stretch, and by the end of the book they have covered the GUI, animation, and sound techniques needed to create two simple computer games.
The writing style is clear and friendly without coming off as cutesy. Each chapter is relatively short, with review questions at the end in the style of a text book (the answer guide is available in the appendix). There is a liberal use of sidebars to break up longer sections or highlight related digressions. And the authors also don’t shy away from showing “broken” versions of programs as they evolve, which teaches the reader how to understand error messages and debug problems – an extremely important skill for a programmer.
I recommend checking out Hello, World! if you have a young person in your life who is interested in learning about programming. Writing the book was a father/son project, and reading it together seems like a fun parent/child activity for the summer.
Disclaimer: I received a free review copy of this book from the publisher as part of my participation in the PyATL Book Club.