Game Programming is very popular and many high schools offer some type of Computer Science course that includes a bit of game programming. Scratch can be used to teach some basic game programming as can Kodu. Unity is another great tool for 3D game programming that now will run on Android. I teach quite a few games in my AP CS A class using GridWorld and Java Graphics with a bit of GUI. I have used GameMaker a few times with mixed results. Also, C# and XNA work great for game development and there are lots of materials readily available for free – check Alfred’s Blog. Pygame is great and allows you to create some really nice games using Python. The options for game programming are numerous and games really do get students excited and motivated about learning Computer Science.