Students Learning to Program by Developing Games: Results of a Year-long Project in Primary School Settings
Authors: Fokides Emmanuel 
Published: December 2017

Aim/Purpose: The purpose of this study was to examine whether the authoring of computer games in a mainstream primary school setting can support the learning of game design and programming concepts.

Background: Despite the benefits for students when they learn how to program and the significant body of research regarding this matter, these benefits are still under debate, and the teaching of programming has a relatively undeveloped pedagogy. With this in mind, a project was designed and implemented, having constructionism as its theoretical framework. Also, Microsoft’s Kodu Game Lab was used for the development of students’ games.

Methodology: The project lasted for almost a school year (fifty two-hour sessions) and the target group was fifth-grade students (ages 10-11). A total of 138 students participated, coming from five schools in Athens, Greece. Students were divided into three groups. While all groups worked in pairs, to the first there was no teachers’ guidance, to the second there was limited teachers’ guidance, and to the third, a combination of teacher-led and pair work was used. Each group developed three games of escalating complexity and a total of 207 games were analyzed. Data were collected by analyzing students’ games and with a short questionnaire.

Contribution: The study contributes to the debate surrounding the pedagogy of computer game authoring as a tool for teaching programming. That is because few studies have examined the above in mainstream settings, having as a target group primary school students. Furthermore, the present study is in contrast to most studies which involved intensive research projects, since it lasted for almost a school year.

Findings: It was found that the most commonly used programming concept was conditions, followed by variables and loops, while Boolean logic and functions were the least used ones. The most problematic concepts proved to be Boolean logic and loops, closely followed by functions. The least problematic concepts were conditions and variables. Also, the number of programming concepts that were used was increasing in each game, while the errors were decreasing. All in all, students’ final games fall into the relational level according to a modified version of the SOLO taxonomy.
While the findings indicated that, as well as learning some basic programming concepts, students enjoyed the activity and demonstrated positive attitudes to learning programming by developing games; it was also found that the teaching method did not have any effect on the learning outcomes nor in their views for game authoring.

Recommendations for Practitioners: Extended projects can be considered for teaching programming to primary school students, using visual programming tools that allow the development of games. The classes’ teachers can undertake the task to teach programming if they are properly trained. The SOLO taxonomy can be used for assessing students’ games.

Future Research: Future studies can examine a variety of game-like programming environments and the target group can be older or younger students. The assessment of students’ games is also an interesting topic. Finally, research can be conducted by using other devices and compare the results.