Microsoft TileCode is an app for designing, coding, and playing video games directly on low-cost MakeCode Arcade gaming handhelds, as well as in the web browser. With TileCode, we are using the medium of video games to explore the combination of:
- Natural language for informally specifying games goals, rules, and mechanics;
- Physical computational models that foreground concepts such as data parallelism, pattern matching, and conflict resolution;
- Testing and debugging of programs to establish confidence in their behavior and to refine specifications;
- Machine learning to help bridge the gap between natural language and programs, as well as to generate non-player character behavior in games.
Our ultimate goal is to provide a sandbox in which students can express and refine their game ideas, while learning about computation, programming, and machine learning.
During the summer of 2020, I designed and ran user studies with 15 families in North America to better understand how children talk about the behavior of video games and evaluate how their informal descriptions of video games aided them in the development of TileCode games. A Microsoft Research Webinar about our initial findings took place on November 18, 2020 and is available here.