May’s Journey

Using game design mechanics as metaphors to enhance learning of introductory programming concepts.

Lead Staff:
Elizabeth Rowe

Non-TERC Investigators

Magy Seif El-Nasr, Principal Investigator (Northeastern)


There is an urgent need of the nation to engage people of all ages in computational thinking and help them learn basic computer science concepts with a unique and innovative approach of structured in-game computer program coding.

In response to this need, researchers explored the design and development of a 3D puzzle-based game, called May’s Journey, where players solve an environmental maze by using the game’s pseudocode to manipulate game objects. The game was designed to teach introductory but foundational concepts of computer programming including abstraction, modularity, reusability, and debugging. It does this by focusing players on logic and concepts while asking them to type simple instructions in a simplified programming language designed for novices.

The game design in this project differs from today’s block-based programming learning approaches that are often too far from actual computer code. The game also differs from professional programming languages which are too complex for novices. The game and its embedded programming language learning are designed to be responsive to the progress of the learner throughout the game, transitioning from pseudocode to the embedded programming language itself.

Research Activity

The project’s formative and summative evaluation methods, included surveys, expert reviews of learners’ computer code developed in the game, and interviews, were used to gauge learners’ engagement as well as learning. In exploring learning, researchers aimed to understand how players built implicit computer science knowledge through gameplay and how that gameplay related to their performance on embedded assessment tasks.

The project answered the following three research questions:

  1. Can observers reliably detect and label patterns of gameplay that provide evidence of learning or misconceptions regarding the four computer science constructs — abstraction, modularity, debugging and semantics — that learners exhibit playing May’s Journey?
  2. How does learner’s implicit knowledge of these computer science constructs change over time and do those patterns vary by gender and prior programming experiences?
  3. Is there a strong correlation between implicit learning measures and transfer of CS concepts: modularity, debugging, semantics, and abstraction? How do these correlations vary across elements of the game?


This work resulted in several outcomes: game design metaphors tested for their learning and engagement value that can be abstracted and embedded in different games. This project also contributed patterns and an understanding of how people learn and engage in problem-solving using concepts of abstraction, modularity, debugging and semantics. These outcomes led to advancement in knowledge in the learning sciences as well as the design of educational games that enrich STEM learning, particularly in programming and computational thinking. In addition, this project engaged female participants and underserved populations through partnering organizations including National Girls Collaborative project.