This book would not have been possible without the exceptional support of the No Starch Press team. Thanks especially to Bill Pollock for believing in the project; to Tyler Ortman for championing and editing; and to Leslie Shen, Riley Hoffman, Lee Axelrod, Mackenzie Dolginow, Serena Yang, and Laurel Chun for their indefatigable editing, reviewing, marketing, and production prowess and for the countless ways they helped me improve this book from my original manuscript. And thanks to Rachel Monaghan and Paula Fleming for their help copyediting and proofreading.
Thanks to Michelle Friend and Ari Lacenski for their thoughtful and thorough technical review, and to Conor Seng for being the first to read the book and try out the programs — at 10 years old.
Thanks to Miran Lipovača for his amazing illustrations — they bring the kind of life to the text that I could only have dreamed of.
Thanks to my father-in-law, Norman Petty, a retired IBM’er, who began teaching himself Python using an early draft of the book.
Special thanks to my wife and best friend, Bev, for her constant support, and to my amazing sons, Alex and Max, for helping test every program and suggesting improvements. This book and my entire life are infinitely better because of the three of you.
Finally, thanks to my mom, Esta, who encouraged me to love learning and solving puzzles.