Learning Algorithm Design Using Casual GamesMotivating Learners by Opening Programming Logic Selvarajah Mohanarajah Edward Waters College, United States s.mohanarajah0901@ewc.edu Shan Suthaharan University of North Carolina at Greensboro, United States Nagamuthu Sundaralingam Edward Waters College, United States Abstract: The proficiency in computer programming is one of the essential requirements for the computer science education. The key skill required for programming is designing efficient algorithms. We created a prototype for a simple casual one person shooting game that helps learning the conditional structures in algorithm design. We used this prototype to investigate whether opening the gaming logic to the students will motivate them to learn while playing the game. A set of errors were included to the gaming logic intentionally at different stages of the game. These errors will force the students to stop the game, fix the error, and then proceed with the game. To fix an error, they have to understand the underlying programming logic of the game and then suggest suitable corrections. In this strategy, students are not just the game players; they virtually become part of the game development team. The pilot study suggested that the students sensed reasonable satisfaction and pride while playing the game and fixing the errors. This research is still in progress and the new results will be discussed later. Keywords: Educational Games, Learning Programming, DGBL, ITS Introduction In spite of favorable job market for computer related professions, a recent survey (CSTA, 2013) shows that the number of high school students taking computer science AP courses is steadily declining. If this trend continues it will give an immense negative impact on the IT sectors and other sectors such as businesses and government. One of the solutions for this problem is to explore the suitable techniques to motivate the students learning computer programming, which is the fundamental requirement for the computer science education. Traditionally, learning computer programming is considered challenging (Rasyidi et al, 2012). We have been involved in a research that is focused on designing simple casual games for learning the algorithm design (Mohanarajah et al, 2013). In particular, this paper examines whether the opening game programming. Based on a recent survey (Videogame, 2013), sixty five percent of US households play video games and the number will grow rapidly. However, to use the games as edutainment, the education part and the entertainment part should be balanced and seamlessly integrated (Penski, 2001). 1|Page In general, students do not (and need not to) worry about the underlying algorithm of the game while they play. But, what if the student is particularly learning programming or algorithms? Will it be useful for them to explore the logic of the game they play? This research investigates whether opening the logic of the game will motivate the students who study algorithms design. Educational Games Almost all learning in childhood occurs while the children are playing. Using games for learning is not a new idea (Gee, 2003). Many parents and educators initially thought that the electronic games could spoil students (Penski, 2001). However, a recent survey shows that 95% of the k-5 teachers in USA currently use digital games for teaching (Millstone, 2013). As Ferdig,R.(2009) put it, “there is a recent surge of interest in the possibilities of using electronic gaming for teaching and learning”. In his paper, he also included information about a number of journals, conferences, summits, work- shops and web sites that are related to educational games. Initially, digital games were used in military and industrial training (Thiagi, 2006), and now many games and simulations are being used in k-12 teaching (Penski, 2001). The early educational games had been designed based on traditional “drill and practice” philosophy (Gee, 2013). Even now, some games used in k-12 class rooms just include ‘dancing banana’ type feedback (Penski, 2001). Games that immerse students in virtual worlds (role playing) are used for teaching ill-structured disciplines. In general, simulation games are used in training and science experiments. DimentionM (Dipietro, 2009), a game to learn middle school math, is an example for an educational game where fun and learning are balanced. Educational games encourage active learning. Efficient educational games can be designed based on the learning theories such as constructivism, constructionism and situated learning. Past Research: Games for Learning Programming There are a few research activities reported in the main stream literature about educational games for learning programming or algorithm design. Shabalina et al (2010) discuss about an industry level commercial game for learning C#, where the game engine Ogre3D is used with extended game logic. Kahn (1999) describes an interactive puzzle game to teach ToonTalk, which is a visual programming tool. Chong-wei Xu (2009) reports a method of teaching OOP programming concept by designing and developing simple games. Though the title of this paper is ‘Teaching OOP via Gaming’, the students are not playing games for learning OOP. We also found another interesting project named ENGAGE funded by NSF (2013), which is about implementing game-based learning environment for CS Principles. We believe that the “drill and practice” or immersing type of pedagogical approach is not much effective for learning challenging subjects such 2|Page as programming. Therefore, we selected simple casual game approach. Casual games like angry birds have very simple rules and are easy to play (Welch, 2013). They do not require special skills or long time commitment. Opening Program Logic to Gamers We created a prototype for a simple first person shooting game to learn conditional branching in algorithm design. The game is played in two phases. In the first phase, there were various stages and in each stage an error is introduced. In order to continue, students need to identify the problem and to find the suitable solution. For example (see Figure 1), the instructions of the game says that the left arrow move the gun to the left and the right arrow move it to the right. But, while playing, students will find pressing left or right arrow move the gun in one direction only (left only). Student can interrupt the game at this stage and fix this problem. The current algorithm with error is given along with other options for a potential solution. Initially we choose to use multiple choice structures as it is easy to use. Students need to select the correct solution to continue. If necessary, students will be given a chance to revise the subject. Figure 1: Error correction Phase In the second phase, we use a kind of usual ‘punish or reward’ strategy. In order to get more guns from the sponsors, the students need to answer certain number of questions correctly. However the difference in our approach is that the questions are all related to the underlying gaming logic only. 3|Page Evaluation, Issues and Future Direction We implemented a prototype using Java. It is a 2D game. The pilot study was conducted with the help of three of our algorithm design students. The executable game was given to the students to play and evaluate. Their opinions were noted. Though the game was not close to any industry standard game, all three students mentioned that they prefer to play the game (in order to revise conditional branching) than using text-based revision material. One of the student stated that he felt some sort of pleasure and pride as he was able to fix the errors in the game. This paper reports only the initial stage of an on-going research. The results of the pilot study were encouraging. We believe that the qualitative study based on such a small sample is sufficient at this stage. In future, different types of casual games for at least three different concepts will be developed. All the games will be ported online and also for mobile environment. .A full scale evaluation will be conducted. The game scores will be taken as the grades for the students. Quantitative as well as qualitative studies will be conducted to test the significance of differences between the learning outcomes and learner experiences of the members of the control and experimental groups. Playing digital games requires some other skills such as eye-hand coordination. Therefore using game score of students as their grade may cause a problem. A pro gamer has definite advantage over a student with poor gaming skills. AI techniques may be used to overcome this problem. Another issue is related to gender. Girls are already reluctant to offer CS courses. Girls also game less than boys (Winn 2009). Games that minimize in-game performance pressure and time commitment may appeal to women (ibid). Therefore, casual games may be used to learn CS courses in order to avoid distancing girls further from CS discipline. References CSTA (2013): - CSTA Research." CSTA - CSTA Research. N.p., 2012. Web. 10 Jan. 2013. <http://www.csta.acm.org/Research/sub/CSTAResearch.html>. Fredrig, R. E.(2009). Learning and Teaching with Electronic Games. AACE, VA. Gee, J. P. (2003). What Video Games Have to Teach Us About Learning and Literacy. New York: Palgrave Macmillan. ISBN 978-1-4039-6538-7 Johan, Rasyidi &, Susan Bull (2019): Consultation of Misconceptions Representations by Students in Education-Related Courses. AIED 2009: 565-572 Kahn, Ken (1999) “A Computer Game to Teach Programming” Ken Kahn. in Proceedings of the National Educational Computing Conference , June 1999. Meredith, DiPietro (2009), “Experience, cognition and video game play” Handbook of Re- search on Effective Electronic Gaming in Education. IGI Global, 2009. 508-524. Millstone, Jessica (2013) "National Survey and Video Case Studies: Teacher Attitudes about Digital Games in the Classroom." Joan Ganz Cooney Center. N.p., n.d. Web. 10 Jan. 2013. 4|Page Mohanarajah, Selvarajah & Robert Tedeschi (2013): Towards a Casual Computer Game for Learning Algorithm Design. SALT, Orlando, FL NSF (2013): NSF AWARD ID-1138497: http://www.nsf.gov/awardsearch. Web. 10 Jan 2013 Pensky, Mark (2001). Digital Game Based Learning. McGraw Hill Shabalina, Olga & Pavel Vorobkalov, Alexander Kataev (2010) “Educational Games for Learning Programming” International Book Series -Information Science and Computing. Thiagi, S. (2006) Thiagi's 100 Favorite Games (Essential Resources for Training and HR Professionals). Pfeiffer Videogame (2013): “ Videogame Statistics." Online Education Blog. Education Database Online, n.d. Web. 10 Jan. 2013. <http://www.onlineeducation.net/videogame>. Welch, John (2013): GDC '08: Are casual games the future?, GameSpot, Feb 18, 2008, Accessed January 10, 2013. Xu, Chong-wei (2009). "Teaching OOP and COP Technologies via Gaming." Handbook of Research on Effective Electronic Gaming in Education. IGI Global, 2009. 508-524. Winn (2009): Winn, Jillian and Heeter, Carrie “Gaming, Gender, and Time: Who Makes Time to Play?” Sex Roles v 61 p 1-13 Springer US 2009 5|Page