Have you tried to teach programming to beginners? Python is becoming a top choice for the language, but you still have to have them work with the language and understand core concepts like loops, variables, classes, and more. It turns out, video game programming, when kept simple, can be great for this. Need to repeat items in a scene? There's a natural situation to introduce loops. Move an item around? Maybe make a function to redraw it at a location.
On this episode, you'll meet Paul Craven, who created a new 2D game engine for Python just for this purpose called Arcade. And even if you don't teach or aren't learning Python, it's great to play with!
Links from the show
Talk Python Training