We present the conceptual design and first-phase implementation of an approach to computer programming instruction that exploits the attractive force of video games. We partition the skills that a professional programmer must master into a sequence of eight levels, where each level introduces new programming tasks that are to be implemented on a progressively more detailed machine architecture. Our approach is intended to foster a conceptual understanding of the internal representation of data, and the underlying operations being performed on the data by an instruction sequence. To motivate the student programmer, our design features the seamless inclusion of the programming tasks into a video game where, to progress through the levels of the game, the player must also progress through the levels of programming tasks. By the end of the game, the player has a thorough mastery of fundamental programming skills, including array indexing, recursion and pointer variables, together with a solid understanding of the underlying computational model and the von Neuman architecture.