I teach the course Engineering Basics (click for course description). We build games, embedded systems and have fun!
I utilize my love of retro gaming (My favorites are Atomic Bomberman and BubbleBobble) to introduce my students to gaming concepts (e.g. sprites, tiles, etc.) while learning programming concepts (loops, logic, array, etc) and software development methods (waterfall).
I have them build a PacMan-style game called PacWoman (click to play) and then afterwards build their own game.
Example of slides used in teaching:
We also build embedded devices to learn about hardware-near programming and build physical objects that we can interact with. I’ve created exercises that emphasize creative exploration and relate to everyday problems in students lives: