I recently stumbled up on a book about game programming with PyGame for beginners. Even I am not the target audience it did catch my attention and my desire to play a bit again with game development and Python. And I had a fantastic time so far :-)
TLDR: I think it is a great book for learning python and game development at the same time. The author duo does a great job in explaining the concepts involved and at the right time and pace.
Disclaimer: I got a review copy for free. However, it was at my request, and my opinion is still my own.
If you have never programmed before but are curious about developing your first simple games or learning Python. It’s written in a conversational style with younger folks as the readers; nonetheless, it’s even a good fit for the older (like me :-)).
You will start with building an animated scene of falling rain, adding a cloud and a guy with his umbrella.
Shortly after, this is turned into a space invaders game.
You’ll then develop pong, a fly catching game and last but not least a tank game. Along with developing the games step by step you’ll learn how Python works, what variables are, tuples, list and all the other stuff you need to know for developing these games. They’ll also cover some simple math; fear not, it is simple and with good explanations.
Which leads me to the biggest benefit this book has. It’s way of explaining things. It’s clear, concise, with a good pace, and just in time, so you never feel overwhelmed.
On the game developing side, you learn the concept of a game loop, animation, moving stuff around, collision detection and a bit more.
I love this book, and it was a fun time for me to write the first two games and I’ll definitely finish the others too. Sure, as an experienced developer I am not the target audience, but I have fun nonetheless.
The explanation and teaching are great, and I recommend it to anyone interested in learning Python and/or games.
Want content like this in your inbox
each workday irregularly? No BS, spam or tricks... just useful content: