Application of Gamification in Introduction To Programming - A Case Study
Application of Gamification in Introduction To Programming - A Case Study
ISSN 2454-5899
Abstract
Institution of higher educations has struggled to provide engaging method to learn
programming although effort has been made by educators but often with limited success. The
question is how best to teach introductory to programming for novices students is often not
addressed properly. This is because learning programming for college students especially for
new learners in programming present many challenges such as subject difficulty, lack of
motivation in doing exercises, passiveness in class and diversity of student abilities. Since
students often faced a lot of difficulties when learning introductory of programming,
gamification has the potential to provide a way to promote students’ motivation and
engagement while also providing feedback on the students’ level of competency of the learned
material. Gamification is the process of incorporating game elements into education in an
effort to increase student engagement.Thus, there appears to be a good fit between
introductory of programming and gamification. Taking these elements into consideration, this
paper seeks to apply the concept of gamification to semester 1 students taking Java
Programming as the first level of programming subject. Some best practices in gamification
such as competitions, incorporating engaging games elements, scoring using rewards and
levels, badges, providing feedback, and providing homework to encourage informal learning
are going to be applied. Finally, several popular online applications such as Kahoot, Online
Crossword Puzzle and Online Quiz were also designed to see the impact on these
gamification tools towards learning of students. The game would be designed to have 3 levels
that increase in difficulties with competition as a core element to increase student’s
engagement. This paper would also seeks to design the user evaluation form that can be
used to determine the effects of applying gamification on the student’s engagement,
motivation level, and understanding of the topic in introductory programming subject.
Through the research findings it could provide a platform in formulating alternative ways
besides the traditional teaching method for educators in creating educational programming
games and applying it to teach novices in introductory programming subjects.
Keywords
Gamification, Student Engagement, Online Applications, Java Programming, Introductory to
Programming
1. Introduction
Programming is one of the key areas of computing course, through which a student is
required to acquire the competences. However, several problems have been reported in
literature related to learning programming. One of the reasons is high failure in programming
courses although decade of effort have been put to decrease these rate. Novice students face
challenges in learning programming due to lack of motivation, engagement and difficulties in
understanding the programming fundamentals especially for first year students. Weaker
students also find the computer programs and algorithm too abstract and complex entities that
involve concepts were hard to learn and teach (Olosson et. al., 2015). Furthermore, learning
programming with traditional methods such as lecture and lab session is often found to be
boring and ineffective (Nikula et. al., 2011). This sometimes causes students to cheat, feel
helpless and drop out from the course. (Robins et al, 2003, Adorjanet.al., 2013)
Today learners are a new profile who grew up in a digital age and have a different
learning style and higher requirement for teaching and learning. It was found that an average
student today spend 10,000 hours gaming by the time they reach 21 years old
(McGonigal,2015) which is a remarkable amount of time. Educators are faced with new
challenges on how to incorporate gaming, which is one of the technique that can promote
active learning to meet students who have a variety of learning style. The aim of the paper is
to fill in the gap by identifying how best to incorporate gamification to make students
learning more engaging, motivated and increase student understanding. With this, it is hope
that it could provide a framework for educators on how to implement gamification to meet the
learning style of 21st century learners who are taking Java programming subject.
2. Literature Review
2.1 Gamification
This term refers to the use of game element in a non-game context to increase
engagement between human and computers (Deterding, 2012). The game elements are
characterised by the use of items such as points, badges and levels. According to (Deterding
et.al, 2011) the adoption of gamification did not see widespread before the 2nd half of 2010
although the term was first documented in 2008. It is also found that the early adopters of
gamification are mostly from the area of computing and IT schools. Gamification as an
academic topic is relatively young as compared to is boom in the area of business, marketing
corporate management and wellness initiative. According to Gartner Hype Cycle (Garner,
2013) it was indicated that gamification is at the peak of the Hyper Cycle and is expected to
reach the productivity plateau in five to ten years’ time.
The majority of the reviewed studies on gamification did yield positive results.
Findings studies performed in higher educationsettings showed that there are significant
improvements in subject understanding, diligence, and motivation for students learning
through gamification (Barata et al., 2013). It was found the use of gamification as a learning
tool is able to meet the gap as it reinforce not only knowledge but also develop soft skills such
as problem solving, collaboration and communication. It also able to provide motivation
power as gamification encourages engagement which is able to meet with just having the joy
of playing and possibilities of winning it. The embedding of gamification in programming
course could reduce dropout rate and enhance student participation and have a positive impact
on learning. (Azmi et.al, 2015). Muratet et al (2010) found that some platform may even help
recruit students in computer science. Given that gamification is known to promote
engagement and motivation, the idea to incorporate gamification principles to motivate the
students is appealing.
On the contrary, competition in gamification provide a powerful extrinsic motivator
but it has been criticized that it reduces intrinsic motivation and so reduce opportunities for
optimal learning. Research shown that students who lose in competition perceive themselves
as less competent and this dampen their intrinsic motivation.(Vallerand et.al., 1986)
3. Research Methodology
The syllabus included 15face-to-facetwo-hour lectures, 15 two-hour practical classes,
15 one-hour face-to-facetutorial, and 15 one-hour online tutorial. The lectures covered Java
programming concepts ranging from fundamental concepts to object-oriented programming.
Practical classes are done in computer laboratory where students were presented with a series
of programming tasks that they had to complete individually during the session, with the
tutors offering occasional help. Face-to-face and online tutorials are conducted as practice
sessions where students are given short questions to be discussed in groups. All course
materials were uploaded to the institutional LMS on a weekly basis. The course evaluation
consisted of 7 lab tasks (14%), 3 online quizzes (6%), 3 programming assignments (30%),
and a final examination (50%).
The main purpose of this research study is to explore the impact of gamification to
students’ engagement and motivation in learning Java programming. It also seeks to gauge
students understanding on Java programming after implementing gamification. The below are
the 2 research questions that this research seeks to answer.
4. Findings
An experiment was conducted on a group of students taking the subject on
Fundamental Programming. The students are year 1 students with very little previous
knowledge in programming. Normal class was conducted at the beginning with teaching
methods involving face-to-face lecture, tutorial, practical, and online learning.
The gamification activities took place in the middle of the semester. A detailed
explanation on the gamification activities was given to the students prior to the activities so
that they have a full understanding on what they were doing. In addition, instructor’s guidance
and feedback serve as scaffolding during and after the game based activity. This is in line
with the study of Raymond T. and Lesley T. (2015) thatclaims the importance of instructional
support, feedback and debriefing in game-based learning in a pilot study done in Singapore
Higher Education.
4.1 Gamification Elements Used
There is a variety of ways to implement gamification in classrooms. It normally
involves using several game elements to make the activities become gamelike. This research
chooses to use points, badges, and leaderboardsgamification elements.
4.1.1 Points
Points are awarded to students who have completed a particular task. There is no
maximum points to reach since in a typical game, players gets to accumulate as many points
as possible. Students who achieved the higher points will move up the ladder of achievement
in the leaderboard.
In this experiment, points are awarded after each level has been completed. The points
given are based on the correct answers provided by the students during an activity in a
particular level. An example of points collected for a level played is shown below. The table
was generated and shown on the subject’s Moodle page.
4.1.2 Badges
A badge can represent an achievement done by the students in exploring something
related to the topics covered in the syllabus taught. Badges are awarded based on completion
of an activity. For this experiment, a smiley badge is selected. Different number of badges are
awarded for different level of achievement. The students are able to view the total badge that
they have collected on a table shown on Moodle. The table is updated after each stage has
been completed.The badge collection table is shown below which was also shown on the
lecturer’s Moodle page for the subject.
4.1.3 Leaderboards
A leaderboard will be displayed throughout the duration of the experiment. It will
display the points accumulated after each level has been completed. A leaderboard is used to
serve as a motivator in this experiment. However, to avoid from demotivating the slow
progress students, only the top five points will be displayed on the leaderboard.An example of
the leaderboardextracted from the lecturer’s Moodle page that was used in this experiment is
shown below.
Software Description
Moodle Online Quiz An online quiz where more challenging questions are given
to the students to solve. Questions given are multiple choice
programming questions.
In Level 2, Kahoot! is still used but using a different kind of quiz called Jumble and
covers the repetition topic. In this quiz, the students are given multiple lines of codes that are
not in order and they are required to re-arrange the codes so that it can be executable
correctly. At the end of the game, points are given to the students based on the fastest correct
answer given during the race. The points are then added with the points collection at level 1.
The new top 5 winners are then shown on the leaderboard on Moodle.
Finally, in Level 3, the students first get to exchange their badges collected earlier
with hints for this level. Every two badges can be exchanged with 1 hint. Each hint is a
correct answer from one of the question in the last quiz. The students are only given the
answer but not the question it belongs to. The students then are asked to take part in an online
quiz on Moodle on the class and object topic. A total of 20 multiple choice questions are
given and they are given 60 minutes to answer the quiz. The points collected at this level is
added to the earlier points collected and the new top 5 winners are again shown on the
leaderboard.
effort. The badges collected can later be exchanged with hints that they can use in the last race
(the active quiz).There are also three stages in the badge collection activities. Each badge
collection activity must be done first before the race for each week.
In Stage 1, students are required to take part in an online Lesson set up on Moodle.
The Lesson component requires students to read several pages containing lesson on selection
structures. In between the pages there are short quizzes given with only two questions for
each quiz. This is repeated until the Lesson ends. At the end of the lesson, the students will be
given badges based on the results of the quizzes answered. If all answers are correct, two
badges will be given, if not all answers are correct but they get a minimum of five correct
answers 1 badge will be given, and if they get less than 5 correct answers no badge will be
given.
In stage 2, students are asked to take part in an online crossword puzzle called Puzzle
Fast based on the repetition structure topic. The completed puzzle must be uploaded to
Moodle to claim their badges. If they manage to upload the completed puzzle within 15
minutes, they will get 2 badges and if they upload the puzzle less than 30 minutes but more
than 15 minutes, they will get 1 badge. Stage 3 requires students to also do online crossword
puzzle but based on the class and object topic. The badges collected are shown on Moodle.
5. Results of Findings
5.1 Online Survey using Questionnaire
To gather quantitative feedback about the gamified experience, all students are asked
to complete 9 questions for an online survey at the end of the semester. Every question has 4
possible answer measured on a Likert scale of 1 (Strongly agree) to 4 (Strongly disagree).
Generally the survey shows positive results in terms of improvement in students’ motivation,
engagement and subject understanding.
5.1.1 Engagement
The responses from question 1 and question 2 shows that nearly 80% of the students
find the class fun and engaging as it allows them to exchange ideas with others during the
gamification activities. The results are shown in the figures below.
Q1. Do you think it is a good idea to use gamification to teach Java programming?
Why?
The overall reactions from the students’ focus group interview showed overall a
positive response. Below are several answers given by thestudents:
“Yes it is a good idea as it makes the class more fun, interesting and challenging.
“Yes, I can get to understand the programming concept clearer after the answer is displayed
and explained by the lecturer”.
“Please provide longer timing for brainstorming and a variety of questions types (such as
MCQ, writing short codes, T/F)”
“Should allow students to practise how to use the Kahoot software before the gamification
activity since it is their first time using it.”
In conclusion, all students prefer the Kahoot activity as compared to the Crossword puzzle as
it is more interesting and have more coding questions. They find the Crossword Puzzle is
more appropriate to test theory concept which is better used for theory subjects.
that it would be better if all the lights in the classroom were turn off as this would make the
screen image sharper. From this observation, it is clear that it is important to test run the
gamification in the actual site before the actual activity so that this issue would not happen.
7. Conclusion
To conclude this paper, learning programming is not easy for students but through
gamification it can lessen some of the learning burden of students. The initial study of
existing work show that there is a need to a new approach to learning Java programming
especially for novice students. It was found through many literature review gamification can
increase students motivation and engagement and improve learning if the game is properly
designed and implemented. However,the concept of gamification may look simple, a lot of
consideration needed to be look in to order to make student learning effective. This is because
there is currently no practical guidelines on how to include these elements in a coherent and
efficient manner.
The short experiment done for this research has shown that majority students feel
more motivated to learn programming after they have taken part in the gamification activities.
The activities have also made them become more engaging. This is reflected in the result of
the questionnaire and also seen during observation in which the students shown full focus on
the activity and excited to take part and answer the questions given. The gamification
activitieshave also helped them to gain better understanding in the topic covered. However,
there are a few negative comments from the students mainly regarding the too short time
given for them to answer the questions in the game or race conducted. This can be improved
in the future by looking into more suitable time duration given so that the students can have
enough time to discuss and therefore experience more effective learning when answering the
questions.
In terms of the software used, most of the students prefer Kahoot! because it is more
interesting and fun. This experiment has used limited number of software since the scope of
the experiment is small. Other software can be explored and used in the actual
implementation of gamification.
7.1 Research Limitation
We have to acknowledge some limitations in our research. The intervention already
showed some promising results but the length of the intervention was only for 3 weeks which
was considered short. It would be better if the experiment can be conducted over 2 semesters
and with more than one class. Due to the small number of participants, the results findings
may not be so reliable. Hence, study with larger sample size of students must be carried out to
get more conclusive and reliable results
7.2 Scope of Future Research
The effect of gamification on different kinds of subject for example theory subjects
related to computing area could be as a future work. From this research a study on the
differences of implementation of gamification towards theory and programming subject could
be studied. A longitudinal study could also be performed to show the impact of gamified
courses towards students’ outcomes in the long run. It would be good to assess
whethergamification only has impact on the performance of the students for the individual
course itself orit has a larger impact on their overall performance towards obtaining their
degree.
Since students are not exposed to gamification learning activity before it would be
interesting to investigate the engagement and motivating factor when gamification is being
regularly conducted thus become less of a novelty for students.
The role of educator in motivating students to perform extra activities provided in
gamification platform remain a crucial factor to the success of gamification. (Tenorioet.al.,
2018). Hence it would be interesting if a study could be done in order to identify how best
educator can provide motivation for the learners when they are embarking on gamification for
their learning.
References
Adorjan, A, & Ines,F.(2013). MultipleIntelligence Approach and Competencies Applied To
ComputerScience 1. IEEE Frontiers in Education Conference.Oklahoma City, OK,
USAhttps://doi.org/10.1109/FIE.2013.6685014
Azmi, S, Iahad, N.A & Ahmad, .N. (2015). Gamification in online collaborative learning for
programming courses:A literature review. Journal of Engineering and Applied
Sciences, 10(23), 1-3
Balraj, K, Parul, K & Ahmad, .N. (2012). Gamification in Education—Learn Computer
Programming with Fun. International Journal of Computers and Distributed
Systemss, 2(1), 46-53.
Barata, G., Gama, S., Jorge, J., &Gonçalves, D. (2013). Improving participation and learning
with gamification. Proceedings of the First International Conference on Gameful
Design, Research, and Applications, Toronto, Ontario, Canada, October 02 - 04,
2013https://doi.org/10.1145/2583008.2583010
Daniel, J, Parul, K & Ahmad, .N. (2012). Making sense of MOOCs: Musings in a maze of
myth, paradox and possibility. Journal of Interactive Media
Education, 3(1),. https://doi.org/10.5334/2012-18
Deterding, S., Dixon, D., Khaled, R., &Nacke, L. (2011). From game design elements to
gamefulness: Defining “gamification”, Proceedings of the 15th International
Academic MindTrek Conference: Envisioning Future Media Environments, Tampere,
Finland, September 28 - 30, 2011 https://doi.org/10.1145/2181037.2181040
Deterding, S. (2012). Gamification: designing for motivation. Interactions, 19(4), 14-
17.https://doi.org/10.1145/2212877.2212883
Gartner (2013). Gartner’s 2013 Hype Cycle for Emerging Technologies Maps Out Evolving
Relationship Between Humans and Machine. Retrieved 13, June 2018, from
http://www.gartner.com/newsroom/id/2575515
Ibáñez, M. .B, Di-serio, A & Delgado-kloos, C. (2014). Gamification for Engaging Computer
Science Students in Learning Activities: A Case Study. IEEE Transactions on
Learning Technologies, 7(3), 291-301.https://doi.org/10.1109/TLT.2014.2329293
Mcgonigal, J. (2015). Want To Succeed In Life? Play Video Games The Huffington
Post. Retrieved 10 July, 2018, from http://www.huffingtonpost.com/jane-
mcgonigal/videogames_b_823208.html
Mohamed said, S.H. (2018). Crossword Puzzle for Selection Statement. [Online]. [7 May
2018]. Available from:
https://www.puzzlefast.com/en/puzzles/2018041723081249/plain-puzzle
Mohamed said, S.H. (2018). Crossword Puzzle for Repetition Statement. [Online]. [30 April
2018]. Available from: 14 May 2018
Mohamed said, S.H. (2018). Kahoot! - My Kahoots. Retrieved 10 April 2018, from
https://create.kahoot.it/kahoots/my-kahoots
Mohamed said, S.H. (2018). Moodle Platform for UOW - CSIT111 . Retrieved 20 June
2018, from https://moodle.uowplatform.edu.au/login/index.php
Muratet, M., Torguet, P., Viallet, F., &Jessel, J. (2010). Experimental feedback on Prog&
Play, a serious game for programming practice. In 31st Annual Conference of the
European Association for Computer Graphics
Nikula, U, Gotel, O &Kasurinen, J. (2011). A Motivation Guided Holistic Rehabilitation of
the First Programming Course. ACM of Transaction Computer Education, 24(1), 24-
38.https://doi.org/10.1145/2048931.2048935
Olsson, M, Mozelius, P & Collin, J. (2015). Visualisation and Gamification of e-Learning and
Programming Education. The Electronic Journal of e-Learning, 13(6), 441-454.
Raymond, T & Lesley, T. (2015). Game-Based Learning in Singapore Higher Education-A
Pilot Study. PEOPLE : International Journal of Social Sciences, 1(1), 577-578.
Robins, J &Rountree, N. (2003). Learning and Teaching Programming: A Review and
Discussion. Computer Science Education , 13(2), 137-
172.https://doi.org/10.1076/csed.13.2.137.14200
Tenorio et al.. (2018). Influence of Gamification on Khan Academy in Brazilian High
School. PUPIL:International Journal of Teaching, Education and Learning, 2(2), 51-
52https://doi.org/10.20319/pijtel.2018.22.5165
Vallerand et al.. (1986). Negative effects of competition on children's intrinsic
motivation. The Journal of Social Psychology, 126(5), 649-
656.https://doi.org/10.1080/00224545.1986.9713638
Vihavainen, A., Airaksinen, J., Watson, Ch. (2014). A systematic review of approaches for
teaching introductory programming and their influence on success. In: ICER
’14Proceedings of the tenth annual conference on International computing education
research, New York.https://doi.org/10.1145/2632320.2632349