Let the students contruct their own fun and knowledge - learning to program by building computer games Authors (original) (raw)
Related papers
Computer programming is a core subject in most Computer science programmes at university level but many students have difficulties with both the understanding of theoretical concepts and with the learning of practical programming skills. Several studies have pointed out that there exist pedagogical and motivational problems resulting in high drop-out rates and low learning outcomes. On the other hand today's students have grown up in a digital and internet connected world where playing computer games is a common and appreciated spare time activity. It has been discussed during many years amongst teachers and researchers which important features a programming language should have to support learning and which the appropriate programming paradigms are for introductory programming courses. Less has been discussed and written about modifying the actual course content and use the recognised attraction and catalytic effect of computer games. The aim of this case study is to describe, analyze and discuss the concept of learning to program by game construction. In this case study two course analyses have been combined with a literature review on pedagogy for Game Based Learning (GBL Findings from the literature review show that the idea of students constructing knowledge in their interactions with their environment is not a new one and that games have been used in educational contexts long before the introduction of computers. The idea of Game based learning has support in the constructivist learning theory concept that was introduced theoretically at university level in the 1970s by Jean Piaget and Lev Vygotsky. Results from the study also indicate that the practical application of the game construction concept has been successful in the two investigated programming courses both when it comes to student motivation and learning outcomes. Furthermore, this game based pedagogy can motivate students not only to develop themselves as future programmers but also to become more innovative and entrepreneurial by improving the quality and performance of the games in order to deploy, promote and sell them.
A holistic framework for the development of an educational game aiming to teach computer programming
Computer science is gradually changing, evolving and adapting according to the needs of each time period by incorporating the technological developments available. However, despite the occurring changes and the current progress in the domain, computer programming is still a vital chapter within computer science, and its teaching remains a difficult endeavour. On the other hand, students have changed the way with which they learn, interact with and search for knowledge. They spend significant amounts of their everyday lives from a very young age interacting with the computers by playing games. Thus, they are used to environments with impressive special effects and graphical interfaces where they have full control of the situation and interact with the environment's elements. Therefore, today's teachers are trying to connect computer programming learning with students' everyday usage of the computer, which does not include simple textual editors for programming lines of code with no other interaction functionalities. Hence, teachers face the challenge of incorporating environments that are similar to students' existing mentality and of creating tasks and assignments that can be executed within these environments and can provide students with the necessary programming knowledge and skills. A number of software solutions were developed towards facing the aforementioned difficulties. They can be classified into three main categories, namely educational programming environments, microworlds and educational games. Educational games used in computer programming courses are considered to present added value, due to their ability to motivate students towards actively participating in the learning process and to support high levels of interaction, group work and critical thinking. Thus, we have developed an educational game that aims to further enhance computer programming education by addressing occurring problems. This paper aims to introduce and elaborate on a holistic framework that has been constructed as a guide towards the development of this game. To this end, we collect documented difficulties identified in computer programming learning and teaching and study existing frameworks that have been proposed for the development of software solutions for computer programming courses and for the development of successful serious games that do not however focus on computer programming education. This information is thoroughly studied and refined and results in the proposed framework that could also be employed for the design and development of other future educational games focusing on computer programming education.
Learning computer programming through game playing
2012
In this paper we present an approach for teaching and learning Computer Programming through Game playing. This activity is intended to complement traditional teaching of concepts. The focus is on building program comprehension rather than program generation. In playing the game, students improve their ability to read and understand a program written in a specific language and to follow the logic in a program. They build speed in comprehension, as is required in learning any language. To win the game, students have to play certain steps repeatedly, using different strategies, and with time constraints. This repetitiveness reinforces learning. Once they master the basic elements of a program, they will experience less frustration in coding solutions for more challenging problems. The preliminary results with students using this gaming activity are encouraging.
Games as a motivation for freshman students to learn programming
34th Annual Frontiers in Education, 2004. FIE 2004., 2004
Programming is a difficult skill to acquire. It is best learned by practice and, if students are to learn effectively, at least some of this practice will have to be self-directed. Instructor's key role is to persuade our students to do this and thus to motivate them. In the past, our students identified programming as a vital skill in demand by industry. Consequently they were motivated to acquire a useful skill that would be relevant in some future job or lucrative career. Nowadays, our WEB age students have no idea why they have to study programming. Programming courses are seen simply as mandatory parts of the degree course to be negotiated. Their world of computing is multithreaded computer programs with impressive human interfaces for games and WEB. They cannot relate them with the classical programming exercises that ask for single-threaded programs performing a sequence of calculations. Given this, we decided to introduce our students in problem solving using what they view as real-world problems such as games and WEB-programming.
Using educational games in learning introductory programming: A pilot study on students' perceptions
2010
Studies of using games for learning have being widely discussed in various literatures. This is due to believes that educational games (EG) can offer many learning benefits such as motivation, engagement and fun. Learning Programming requires many skills such as logical thinking and problem solving as well as understanding of abstract concepts. As a result, many students found that Programming is a challenging subject which resulted in low motivation to study the subject. Thus, it is worth to study how educational games help to enhance our students learning attitude towards Programming. This paper will discuss on our pilot study of students' perceptions towards using educational games as their learning medium. Findings indicated that the attitude of most students are positive and they are also more motivated to learn Programming by using games compared to conventional method. Hopefully, this research provides some insights to understand our students' perceptions regarding educational games usage in their learning.
University Students ’ Perspectives On The Impact Of Games In Preparing For A Programming Course
Asian Journal of the Scholarship of Teaching and Learning, 2019
Programming in computing is often considered difficult and challenging by many students. This article discusses students' perspectives on the impact of board games and online games in helping them prepare for their programming course. We compare two kinds of games: a modified board game called "Robot Turtles” and an online game called CodeCombat. The results of our study show that students prefer online games in comparison to board games. Moreover, they were also able to learn computing concepts through these games. One surprising observation from the study was that students from the class which used these games performed just as well in the mid-term programming assessment as students that were taught computing concepts using traditional teaching methods. This indicated that games could be used to replace traditional lecture methods in preparing students for an undergraduate programming course. Students who attended the class that used games experienced higher levels of confidence in writing and debugging a computer programme as compared to their peers who attended the class that used only traditional lectures.
Learning programming with serious games
EAI Endorsed Transactions on Game-Based Learning 13(1), 2013
Students who are learning to program often have difficulties understanding cognitively complex concepts. Teaching programming is mainly focused on the syntax and features of programs, rather than to a deeper understanding of programming constructs and abstract concepts. Computer game stimulates active learning and presentation of learning content in a variety of contexts that are funny and engaging for students. This has a positive impact on the motivation to learn. This paper deals mainly with defining the programming knowledge and common problems with teaching programming, comparing the properties of novice and experts programmers and introducing the semantic method of teaching programming where one would teach only the semantics of programming constructs unbound to specific programming language in an interactive motivating setting of educational computer game. In this paper we discuss the main characteristics of computer games and specific features which makes them useful in the educational setting. As an example of presented method we introduce a game on the presentation of variables in programming. The game is based on visualizations of different types of variables and on the interpretation of the assignment sentence. The game actively encourages interactivity and deeper learning.
Game design based learning of programming
2019
We will present game-based learning and the use of game design as a method for teaching programming in primary and secondary schools in the paper. A lot of knowledge about game-based learning in general was collected in the last decade, but very few information and resources can be found on how to use game design as a method for teaching programming. We have made an extensive study of different approaches to game design-based learning with special emphasis on learning programming for novice programmers. The results will be used as a foundation for the development of methodology in the Eras-mus+ international project Coding for Girls. This project addresses open and innovative education and training embedded in the digital era by targeting programming skills that are high in demand in a technology driven society. The project also aims at addressing the gap between male and female participation in computer science education by introducing early methodological learning interventions that make computer programming attractive for girls and boys.
Designing Educational Games for Computer Programming: A holistic Framework
Computer science is continuously evolving during the past decades. This has also brought forth new knowledge that should be incorporated and new learning strategies must be adopted for the successful teaching of all sub-domains. For example, computer programming is a vital knowledge area within computer science with constantly changing curriculum and its teaching remains a difficult endeavour. On the other hand, students start from a very early age to interact with computers through games and other entertaining multimedia software. Therefore, they seem to be keen on environments with impressive special effects and graphical interfaces where they interact with the environment's elements. In response, teachers are trying to connect computer programming learning with computer operations that students are familiar with, which does not include textual editors for programming lines of code with no other interaction. Educational games used in computer programming courses are considered to benefit learning, because they motivate students towards actively participating and interacting with the game's activities. Thus, we have developed an educational multiplayer game that aims to further enhance computer programming education by addressing occurring problems. This process, however, requires proper planning during the design of educational games, and thus the availability of adequate guidelines that include all characteristics that should be incorporated in such games. This paper aims to introduce and elaborate on a holistic framework that has been constructed as a guide towards the development of this game. To this end, we study existing frameworks that have been proposed for the design of educational games and document features currently supported by educational games that teach computer programming. We conclusively propose the framework we have constructed for the design of our game. This framework can be used for the design of other computer programming-specific educational games and extended for other educational domains.
Learning to Program by Building Learning Games
The 11th European Conference on Games Based Learning, ECGBL 2017, 2017
Digital games and digital gaming have had a fast expansion in the 21st century and today the vast majority play some kind of digital games. From a teacher's perspective an interesting type of games are the so called learning games and the didactic idea of Game-based learning (GBL). In the last decade GBL has been an emerging field and several researchers have pointed out its strong learning potential. The aim of this study is to describe and discuss the idea of learning to program by game construction. The overall research strategy has been action research where the case study approach has been combined with a content analysis of submitted learning games. Data has been collected from course evaluation questionnaires, postings in online discussion fora and game analyses. Involved informants have been kept totally anonymous and game analyses are also presented with respect for personal integrity. Findings show that game construction can be an appreciated as well as stimulating way of designing course assignments, especially in programming courses involving multimedia and graphical user interfaces. The quality of students' submissions show a wide variety and are strongly dependent on students pre-knowledge. Some of the student built learning games were found to have a potential for reuse as additional learning tools in introductory programming courses. However, to what degree and how needs to be assessed in a future study.