Compilers: principles, techniques, and tools
Compilers: principles, techniques, and tools
Communications of the ACM
Karel the Robot: A Gentle Introduction to the Art of Programming
Karel the Robot: A Gentle Introduction to the Art of Programming
Mindstorms: children, computers, and powerful ideas
Mindstorms: children, computers, and powerful ideas
Learning to Program with Alice, Brief Edition
Learning to Program with Alice, Brief Edition
Storytelling alice motivates middle school girls to learn computer programming
Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
Hi-index | 0.00 |
We present the conceptual design and first-phase implementation of an approach to computer programming instruction that has been designed to exploit 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 approach is designed to be integrated into a video game where, to progress through the levels of the game, the player must also progress through the levels of programming tasks. After completing all levels the player of such a game would have a thorough mastery of fundamental programming skills, including array indexing, recursion and pointer variables, coupled with a solid understanding of the underlying computational model and the von Neuman architecture.