9 years & up
This is Part Two of a four-part series. Also visit Part One, Part Three, and Part Four.
Is “Teach Your Kids to Code” fun and educational?
Our mission is to identify solutions for teaching that are fun and engaging: learning through play. While it might seem that a 300+ page book doesn’t fit with that edict, the reality is that a complex skill like Python programming will need more effort and depth than a simple toy can offer. The beautiful thing about this book is that Dr. Payne makes the complexity very manageable and provides a ton of opportunities to practice skills by making colorful graphics and amusing games. This book provides a great, perhaps perfect, balance between learning and amusement. The result is quite compelling to children and their parents alike.
What Will Kids Learn from This Book?
Teach Your Kids to Code wastes no time and jumps right into making a program, asking the reader to patiently type out the sample code. This is the intro that allows a student to genuinely say “I’m a coder now” so that any fears are promptly set aside. Immediately after this first program, the book then starts to cover graphics using the Logo-style “turtle” Python module. Students learn to programmatically move the turtle around the screen (effectively making a plotter pen) and through the simple tutorials begin to understand how to use loops, strings, and random numbers. This module is successfully carried throughout the majority of the book, invoking the simple line-drawing routines to learn each new concept. Parents and kids alike will love the beautiful graphics created in each exercise, with plenty of chances to customize and experiment with each picture.
The final portion of the book then switches to using a more advanced gaming framework called Pygame. Pygame can be used to create serious games–it’s been around for a while and includes extensive samples and documentation, so there’s effectively no limit to how much you can create if you build on the foundation laid out in Teach Your Kids to Code. As a stepping stone to more advanced games, the book ends with a well-explained implementation of the classic game Pong. It’s quite the common teaching game for introductory student texts, but this version successfully uses all the concepts and graphics from the rest of the book so that it feels like a natural extension of the previous programs.
Parents and kids alike will love the beautiful graphics created in each exercise…
Kids will learn Python very well from this book. The author practices good habits–like commenting sections and lines–that serve to help young readers understand the purpose of each Python statement. More than just commenting, each code segment is always followed by a simple (yet thorough) explanation of what’s going on. At one point there are five lines of code followed by three pages of text! This explanatory text is balanced by the frequent practical lessons where students are making fancy pictures or setting up silly games. There is a lot going on in every chapter, but it’s all easy to follow and well explained.
What ages of kids will enjoy “Teach Your Kids to Code“?
Our DistribuFun histogram for Teach Your Kids to Code lines up remarkably well with the manufacturer’s recommendation of “9 years & up.” Kids as young as 7 or 8, who are already good readers, will find this book helpful as they explore with their parents. Frequent visitors to Learn Richly will recognize that we’re big proponents of coding toys that provide a visual introduction to the logic and structures (loops, conditional branching, etc.), so hopefully, even at 7 years old, you’re not starting coding totally fresh. Having quality books like this available makes the “pseudo languages” like Scratch seem unneeded. Moreover, you can directly translate the Python skills you learn here to a variety of diverse careers that employ Python in everyday life. Check out this Wired article on biologists who are learning to code in Python so that they can wade through the data generated by modern biotech tools. Warning: Wired doesn’t censor their interviews, so there’s some salty language (from a biologist!) near the end of the article.
Finally, we kept the right side of the histogram green for teens and adults, and this is a perfectly valid way for older beginners to learn programming. If you’re serious about learning Python as a working adult, however, I’d suggest taking a course or using a book more focused on problems you’ll actually encounter. Python is a phenomenal first teaching language (more on that in Part Four) and enforces very good habits. More than just a teaching language, however, Python is arguably the best language for data science (R may be more widely used by statisticians, but Python is growing faster because it’s more versatile and easier to read) and is as full-featured as a web framework language as PHP and Ruby, though not as popular (Django vs. Laravel vs. Rails). Given all these uses for Python, why not start with a course that assumes nothing while still covering practical topics that grown-ups need?
So, my recommendation for adults is to choose a book with better practical utility like Automate the Boring Stuff with Python, by Al Sweigart. This volume starts at the very beginning, but it finishes with useful skills in file management, web scraping, working with Excel spreadsheets, even sending emails and automating the mouse and keyboard. For non-programmers, these skills could be a real boon to the typical office worker’s productivity.
Adults who want to learn Python but get excited about hardware and electronics might enjoy Programming the Raspberry Pi, Second Edition: Getting Started with Python (Electronics), by Simon Monk. It’s a little old now because it doesn’t cover the latest Raspberry Pi 3, but the differences from a programming side are minimal. You shouldn’t have any difficulties adapting it to the latest hardware. This title is a unique hybrid book that teaches coding and touches on just a tiny few of the plethora of hardware projects available to build with a Raspberry Pi. It helps you program and setup the Pi, including installation, so for the price of this book and an inexpensive all-in-one Raspberry Pi kit, you just need a free HDMI port on your TV and a spare USB keyboard to be a “real” programmer.
Value and Longevity: Is “Teach Your Kids to Code” a Good Buy?
The MSRP of Teach Your Kids to Code is $29.95, set by the publisher. Check around at the links below and you’ll usually be able to find it around 25%-30% off that list price, depending on where you buy. Note that the Kindle version will be cheaper, but you may find more formatting errors or other display issues that are typical with textbooks that are converted to Kindle. Also, if you don’t own a high-resolution color device (like an iPad with the Kindle app), go ahead and buy the print edition so that you don’t miss out on the full-color graphics that add so much to the playful experience.
On the topic of longevity, Teach Your Kids to Code should age extremely well. It uses examples that don’t require exotic extensions or specialized knowledge. The book was published in 2015 and should stay current for several more years.