Understanding Computational Thinking before Programming: Developing Guidelines for the Design of Games to Learn Introductory Programming through Game-Play
This paper outlines an innovative game-based approach to learning introductory programming that is grounded in the development of computational thinking at an abstract conceptual level, but also provides a direct contextual relationship between game-play and learning traditional introductory programming. The paper proposes a possible model for, and guidelines in support of, this games-based approach contextualized by an analysis of existing research into the issues of learning programming and game based learning approaches. Furthermore, the proposed game-based learning model focuses not only on procedural and applied knowledge and associated skills acquisition in computational thinking, but also provides contextualised theoretical knowledge on Computer Science concepts. By way of illustration, the authors introduce a game prototype currently being developed to combine a puzzle solving game-play that uses Computer Science concepts as the game elements.