2. Materials and Methods
Computer science algorithms and topics are not always easy to learn. Educators recommend using games in teaching a complex subject to make it easier and more interesting to students. In this study, different kinds of gamification techniques were used to help teach different computer science topics as follows:
The Use of Gamification in Teaching Data Structure Algorithms;
The Use of Gamification in Teaching Mobile App Development;
The Use of Gamification in Code Genie Tool and a Cybersecurity App.
Data were collected from students who attended the data structure and the mobile app development courses. These are university-level courses for both graduate and undergraduate students. Students were asked about their experience in these two courses by the end of the semester.
The following section explains the group activity games that were developed and used to help teach different data structures algorithms and concepts. The next section demonstrates the game-coding examples that were used in teaching a mobile app development course.
The third and fourth sections explain the gamification elements that were added to two different educational tools: the Code Genie and the “Be Aware of the Hacker” app. Code Genie is a web-based IDE (Integrated Development Environment) that was developed to learn the JavaScript language and the second educational tool is an app that was developed to educate people about different information security subjects. These two tools were developed by the leading researcher of this paper.
2.4. The Use of Gamification in Cybersecurity App
Gulf countries such as Saudi Arabia and the United Arab Emirates are increasingly becoming the targets of sophisticated cyberattacks that are aimed at stealing personal data and, in some cases, exposing state and trade secrets [
17,
18]. As many of these people fall victim to cyber-attacks, more awareness about cybersecurity is needed to protect their social media, bank, and email accounts. This section explains the gamification elements that were added to an app developed by the researcher to educate Arab-speaking people in the Middle East and North Africa (MENA) about cybersecurity and to increase their awareness of information assurance and cybercrimes [
19]. The app was developed for Android, and it was called “Be Aware of the Hacker”.
Figure 9 shows screenshots of the app.
The app is currently available at Google Play, and it includes three information assurance sections: multiple choice questions, terms, and articles. Currently, it includes 20 multiple-choice questions, 15 term definitions, and 30 article links.
The questions section includes different situations that a user needs to respond to while being online. Such as what to do when you receive a link from your manager, how to respond when you see a warning dialog box asking you to click a button while browsing a website, when you need to be suspicious about some online activities, how to be aware of the social engineering, what is Ransomware, and what situation is considered phishing from different choices, what is the difference between http and https. The questions were translated to Arabic from the Quizizz learning platform [
20,
21].
The terms section includes definitions of some common cybersecurity terms, such as Ethical Hacking, Social Engineering, Two-Factor Authentication, Honeypot, Firewall, Rootkit, Worm, Trojan, Virus, Botnet. The term and the article sections’ data were collected from different technical websites such as Kaspersky Middle East and The Arabic News Gate for Information Technology [
22,
23].
The article section educates users about different security topics and to increase their awareness about different situations, such as how to create strong passwords, or how to delete the saved ones from their computers, how to deal with two-factor authentication, what is biometric authentication, what is phishing emails, what are DDoS attacks, and what are the different ways that hackers could use to steal your bank account while shopping online.
Adding gamification elements could increase users’ engagement and their motivation to learn. The app included multiple-choice questions and when a user answers correctly his/her scores will increase by 10 points. An encouragement message is displayed briefly with each right answer. The scores are also increased by five when the user reads an article or a term definition. The scores are also decreased by 10 with each wrong answer.
When a user answers a question, the answer button is disabled to allow one answer. However, a user can visit the same question and answer again using the previous and the next buttons. The answer options are shuffled with each visit and the questions are shuffled each time the user opens the app. An array of the correct questions was used to make sure that the scores were increased once in case the user tried to answer the same question multiple times. The scores were saved and retrieved from the phone’s local storage whenever the app closed and opened again.
Figure 10 shows the gamification flowchart of the app and
Figure 11 shows the code for the onPause and onResume methods that were used for this purpose.
4. Discussion
According to motivation theory and self-determination theory, motivation is either intrinsic or extrinsic. Intrinsic motivation is about a person’s enjoyment, accepting challenges, seeking mastery and curiosity about a certain thing. Extrinsic motivation promotes external reasons for participation, such as competition or collaboration with others, rewards such as scores, points, or badges [
26,
27]. The results of this study showed that using class activities and gaming code examples to explain computer science (CS) subjects increased students’ intrinsic and extrinsic motivation. These findings concur with those of other researchers. Zainuddin (2018) compared the students’ performance and motivation for both gamified and non-gamified instructional models and he found that the gamified model increased students’ motivation and engagement and the findings were supported by the self-determination theory of human motivation [
28]. Ibanez, Di-Serio & Kloos (2014) designed and developed a platform called Q-Learning-G to investigate the effectiveness of gamified activities in learning the C programming language. The results showed that most students continue working even after achieving the learning goal and after earning the maximum points which was an indicator of their cognitive engagement [
3]. However, gamification in education could not be useful if it was not designed carefully. Hanus and Fox (2015) conducted a study to assess the effectiveness of gamification elements in the classroom using motivational, psychological, and behavioural measures [
29]. Testing was carried out on students during a 16-week semester with gamification and non-gamification curriculum. Results found that students in the gamified course showed less motivation, satisfaction, and empowerment over time than those in the non-gamified course. This suggests that some care should be taken when applying certain gamification mechanics to educational settings.
The motivation theory and the self-determination theory also helped in designing the Code Genie tool. After reviewing these theories, three buttons were added to the tool: “Share”, “Like”, and “Others Code”. These buttons would motivate students to write and share code [
10]. In addition, points, and badges were added to the two tools that were demonstrated in this paper. Limantara, Hidayanto, and Prabowo (2019) reviewed studies published between 2014 and 2018 to examine the frequency and effects of gamification elements used in the recent literature [
1]. They found that the most effective elements in gamified learning are points, badges, and a leader board. The Code Genie web IDE has the point and badges; however, the leader board could be added in the next update.
The results of these experiments clearly indicate a positive relationship between the performed methods and a better CS education experience. With the limited number of female participants, it is difficult to conclude that females find gamifying CS education more useful than males do, even though the results show 100% of females agreeing to this statement. This high percentage could be due to the lack of female participation. As a minority group or even a CS novice, activities with high inclusion (such as the bubble sorting activity) may have contributed to the overall positive reaction. A sense of inclusion and belonging most probably led to their overall engagement and understanding. Out of the algorithmic activities, the students seemed to have preferred the sorting class activities the most. This could be possibly due to the level of immersion as well as the level of simplification and application to real-world examples that are easy to follow. Integrating animation, gaming, and another visual stimulation widens the CS education audience as well as the pool of students that can enjoy and understand the concepts explained. Adding visual representation to technical processes such as sorting loops and algorithms allows a broader scope of students to comprehend such complex topics.
The freedom to navigate creatively through Android Studio (with instructions) may have also contributed to the students’ positive reaction to the course. Being able to creatively apply learned concepts and seeing clear results (working code) is a strong motivator for students. This also gives them the ability to further explore programming beyond the class requirements. Instant gratification (working code) is a very strong motivator and is likely to increase the likelihood of a student enjoying a course or activity.
Some misconceptions about CS and coding may be a barrier between students and pursuing a degree in a CS subject, introducing programming in an interactive and creative way can negate such assumptions and attract a larger variety of students to the field. Including artistic features in technical subjects can offer them a new perspective, therefore appealing to a subset of the overall student population that was hesitant to enter the field.
Representation and feeling included are important components of education. The methods used in the data structures class embody these concepts. The students participating in the exercises more than likely felt a sense of inclusion while participating which can increase interest and confidence in a subject. The low number of African American students in the field (and the courses) may be due to the lack of inclusion and participation. Methods such as the ones mentioned in this study can help bridge that gap and make room for a more diverse student CS population.
While the number of students and level of diversity may have been limited, the overall consensus is that introducing gaming and more artistic methods into CS teaching creates a positive reaction from most students of all groups. Perhaps further research to tackle specific portions of the student population is needed for more specific conclusions.
Author Contributions
Conceptualization, H.M.J. and S.T.; methodology, H.M.J.; software, H.M.J.; validation, H.M.J. formal analysis, H.M.J. investigation, H.M.J.; resources, H.M.J. and S.T.; data curation, H.M.J.; writing—original draft preparation, H.M.J.; writing—review and editing, S.T.; visualization, H.M.J.; supervision, H.M.J.; project administration, H.M.J. All authors have read and agreed to the published version of the manuscript.
Funding
This research received no external funding.
Institutional Review Board Statement
The study was conducted according to the guidelines of the Declaration of Helsinki, and approved by the Institutional Review Board (or Ethics Committee) of Oakland University (protocol code IRB-FY2020-68, 29 April 2020).
Informed Consent Statement
Informed consent was obtained from all subjects involved in the study.
Data Availability Statement
The data are not publicly available.
Conflicts of Interest
The authors declare no conflict of interest.
References
- Limantara, N.; Hidayanto, A.N.; Prabowo, H. The elements of gamification learning in higher education: A systematic literature review. Int. J. Mech. Eng. Technol. 2019, 10, 982–991. [Google Scholar]
- Kumar, B.; Kurtana, P. Gamification in Education—Learn Computer Programming with Fun. IJCDS 2012, 2, 46–53. [Google Scholar]
- Ibanez, M.-B.; Di-Serio, A.; Delgado-Kloos, C. Gamification for engaging computer science students in learning activities: A case study. IEEE Trans. Learn Technol. 2014, 7, 291–301. [Google Scholar] [CrossRef]
- Seaborn, K.; Fels, D.I. Gamification in theory and action: A survey. Int. J. Hum. Comput. Stud. 2015, 74, 14–31. [Google Scholar] [CrossRef]
- Deterding, S.; Dixon, D.; Khaled, R.; Nacke, L. From Game Design Elements to Gamefulness: Defining “Gamification”. In Proceedings of the 15th International Academic MindTrek Conference: Envisioning Future Media Environments, New York, NY, USA, 28 September 2011; pp. 9–15. [Google Scholar]
- CodaKid. Available online: https://codakid.com/coding-games-for-kids-the-best-way-to-teach-computer-programming/ (accessed on 22 July 2021).
- Swift Playgrounds. Available online: https://www.apple.com/swift/playgrounds/ (accessed on 22 February 2020).
- Games on Scratch. Available online: https://scratch.mit.edu/projects/144805247/editor/ (accessed on 22 July 2021).
- Varannai, I.; Sasvári, P.L.; Urbanovics, A. The use of gamification in higher education: An empirical study. Int. J. Adv. Comput. Sci. Appl. 2017, 8, 1–6. [Google Scholar] [CrossRef] [Green Version]
- Piteira, M.; Costa, C.; Aparicio, M. A Conceptual Framework to Implement Gamification on Online Courses of Computer Programming Learning: Implementation. In Proceedings of the ICERI 2017 Proceedings, 10th International Conference of Education, Research and Innovation, Seville, Spain, 16–18 November 2017. [Google Scholar]
- Jawad, H.M.; Tout, S. Gamifying Data Structures Algorithms. In Proceedings of the 17th Int’l Conf on Frontiers in Education: Computer Science and Computer Engineering (FECS’21) in the 2021 World Congress in Computer Science, Computer Engineering, & Applied Computing (CSCE’21), Las Vegas, NV, USA, 30 April 2021. [Google Scholar]
- Lafore, R. Data Structure Data Structures and Algorithms in Java, 2nd ed.; Sams Publishing: Indianapolis, IN, USA, 2003. [Google Scholar]
- Jawad, H.; Tout, S.; Abualkibash, M.; Xie, Y. Integrating Art and Animation in Teaching Computer Programming for High School Students Experimental Study. In Proceedings of the 2018 IEEE International Conference on Electro/Information Technology (EIT), Rochester, MI, USA, 3–5 May 2018. [Google Scholar]
- Jawad, H.M.; de Laski-Smith, D.; Tout, S. The Code Genie Programming Environment. In Proceedings of the 2018 IEEE International Conference on Electro/Information Technology (EIT), Rochester, MI, USA, 3–5 May 2018. [Google Scholar]
- Jawad, H.M.; Tout, S. Exploring the Impact of Using Code Genie to Enhance the Programming Knowledge of Students and Across Genders: Experimental Study. In Proceedings of the Future Technologies Conference, Cham, Switzerland, 21 October 2020; pp. 916–943. [Google Scholar]
- Jawad, H.M. Gamifying the Code Genie Programming Tool. In Proceedings of the 2019 IEEE International Conference on Electro/Information Technology (EIT), Brookings, SD, USA, 16–18 May 2019; pp. 555–559. [Google Scholar]
- “The Biggest Data Breaches in the Middle East 2020,” Cio.com. Available online: https://www.cio.com/article/3410237/the-biggest-data-breaches-in-the-middle-east.html (accessed on 7 September 2020).
- Aboul-Enein, S. Cybersecurity Challenges in the Middle East. GCSP 2017, 17, 5–49. [Google Scholar]
- Jawad, H.M.; Tout, S. Introducing a Mobile App to Increase Cybersecurity Awareness in MENA. In Proceedings of the IEEE 2020 International Conference on Signal Processing and Information Security (ICSPIS), Dubai, United Arab Emirates, 25–26 November 2020. [Google Scholar]
- “About Us—Quizizz” Quizizz.com. Available online: https://quizizz.com/about (accessed on 7 September 2020).
- Chaudhary, D. Learning Platform Quizizz Raises $3 Mln from Nexus Venture Partners. Fortune India. Available online: https://www.fortuneindia.com/venture/learning-platform-quizizz-raises-3-mln-from-nexus-venture-partners/102262 (accessed on 7 September 2020).
- “Kaspersky Middle East” Kaspersky.com. Available online: https://me.kaspersky.com/about (accessed on 7 September 2020).
- “The Arabic News Gate for Information Technology” Aitnews.com. Available online: https://aitnews.com/about-us/ (accessed on 7 September 2020).
- “Apple: Most Popular App Store Categories 2018|Statista”, Statista.com. Available online: https://www.statista.com/statistics/270291/popular-categories-in-the-app-store/ (accessed on 22 February 2019).
- “Google Play Most Popular App Categories 2018|Statistic”, Statista.com. Available online: https://www.statista.com/statistics/279286/google-play-android-app-categories/ (accessed on 22 February 2019).
- Ryan, R.; Deci, E. Intrinsic and Extrinsic Motivations: Classic Definitions and New Directions. Contemp. Educ. Psychol. 2000, 25, 54–67. [Google Scholar] [CrossRef]
- Ryan, R.M.; Huta, V.; Deci, E.L. Living well: A self-determination theory perspective on eudaimonia. J. Happiness Stud. 2008, 9, 139–170. [Google Scholar] [CrossRef]
- Zainuddin, Z. Students’ learning performance and perceived motivation in gamified flipped-class instruction. Comput. Educ. 2018, 126, 75–88. [Google Scholar] [CrossRef]
- Hanus, M.D.; Fox, J. Assessing the effects of gamification in the classroom: A longitudinal study on intrinsic motivation, social comparison, satisfaction, effort, and academic performance. Comput. Educ. 2015, 80, 152–161. [Google Scholar] [CrossRef]
| Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations. |
© 2021 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).