The best books for a rock solid python programming foundation

Daniel Zingaro Author Of Learn to Code by Solving Problems: A Python Programming Primer
By Daniel Zingaro

The Books I Picked & Why

Mission Python: Code a Space Adventure Game!

By Sean McManus

Book cover of Mission Python: Code a Space Adventure Game!

Why this book?

Learning how to program in Python and make a video game at the same time. Hmm – sounds like learning your native language while writing a novel. That could be messy. Could be – but not with this book. McManus knows video games. McManus knows how to teach. I love the idea of teaching a programming language through one extended context. If, like me, you’re fascinated by retro video games, get this book and let that fascination propel you through your beginning programming journey. Bonus feature: commitment to the bit; everything is in space!


When you buy a book we may earn a small commission.

Python for Everybody: Exploring Data in Python 3

By Charles R. Severance

Book cover of Python for Everybody: Exploring Data in Python 3

Why this book?

Learning to program is hard. We need teachers who remember this, who are patient, who support the learning process, who not only know how to teach but also know how to learn from their teaching. Severance is all of these things. I like the breezy but precise writing, sections on debugging, glossaries and exercises in each chapter, and discussion of common learner errors. Bonus feature: regular expressions.


When you buy a book we may earn a small commission.

Hello World! A Complete Python-Based Computer Programming Tutorial with Fun Illustrations, Examples, and Hand-On Exercises.

By Warren Sande, Carter Sande

Book cover of Hello World! A Complete Python-Based Computer Programming Tutorial with Fun Illustrations, Examples, and Hand-On Exercises.

Why this book?

I’m a kid at heart. (My favourite book genre is middle grade fiction.) Don’t be put off by a book with "kids" in the subtitle. And what an ebullient book this is! I unapologetically laugh at this book’s humour. I like the short chapters with measurable progress in each one; I like the easy GUI programming to get us started; I like the computational study of probability and randomness. I could quibble over the order that some topics are introduced, and some of the forward references… but, you know what? I won’t. This author duo gets it. Bonus feature: that sneaky way of introducing mutability in Chapter 2. Bonus feature #2: SkiFree.


When you buy a book we may earn a small commission.

Get Programming: Learn to Code with Python

By Ana Bell

Book cover of Get Programming: Learn to Code with Python

Why this book?

Bell is an expert teacher. I like the order of topics; the breakdown of topics into units; the short, targeted lessons in each unit; the varied capstone projects to tie things together; the explicit learning goals; the structured approach to solving problems. The first bit of code that you’ll write is on page 30. Your first complete program is on page 60. What’s up with those first 59 pages, then? Motivation, comparisons to daily life, setup, and building blocks. Things that other authors tend to skip but that may be important for some learners. Bonus feature: “I try not to forget what it’s like to start learning to program from scratch, no matter how many times I teach the course.”


When you buy a book we may earn a small commission.

Python for Everyone

By Cay S. Horstmann, Rance D. Necaise

Book cover of Python for Everyone

Why this book?

I used this book for several years starting in 2013 when the first edition came out. It absolutely holds up today. Learning the Python language (the syntax) is one thing. Learning how to design programs using this syntax is another. We need both but, unfortunately, many books forgo the latter for the former. Not this book! I like the Problem Solving and Worked Example sections: they help learners apply a disciplined, step-by-step strategy to programming projects. There are multiple, varied contexts here as well, which helps capture a broader base of learners. Bonus feature: the Computing & Society boxes.


When you buy a book we may earn a small commission.