PythonGo!: A gamified app for Learning Python Programming
Abstract
Learning programming represents a significant challenge for many engineering students, especially during the early stages of their academic training. This article presents the development and implementation of PythonGo!, a web application designed to enhance students' motivation and engagement in learning basic programming concepts through a structured gamification strategy. The application was developed using the Scrum agile methodology, which enabled the iterative and organized construction of key artifacts such as BPMN diagrams, the database structure, functional modules, and the user interface. For its validation, a non-experimental quantitative approach was applied with a sample of 33 students from different engineering programs. The results obtained through a structured survey indicated a positive evaluation from the students: 86.7% reported that the gamification elements helped them stay motivated, 93.3% considered the instructions and objectives of the exercises to be clear, and 93.3% rated the interface as intuitive and easy to use. However, some limitations and areas for improvement were also identified, such as the clarity of instructions in certain activities. These findings suggest that a gamified application, designed and contextualized to support programming instruction, can be well received by students and contribute to a more engaging and meaningful learning experience. It is concluded that the integration of gamification strategies, combined with a structured and user-centered development process, offers a viable alternative for innovating programming education from both pedagogical and technological perspectives.
Keywords
Categories
Authors
References
Andoko, B.S.; Lestari, V.A.; Ikawati, D.S.E.; Pribadi, F.A.; Aulia, R.F.; Hirashima, T. (2024). Gamification in Viat-Map Application to Improve Student’s Experiences and the Relation with Their Performance. Seventh International Con-ference on Vocational Education and Electrical Engineering (ICVEE), Malang, Indonesia, pp. 198–203. https://doi.org/10.1109/ICVEE63912.2024.10823696
Berciano, A.; Cuida, A.; Novo, M.L. (2025). The importance of coding and translation between programming languages in sequential activities of pre-service teachers: an approach. Education and Information Technologies, 30, pp. 6925–6949. https://doi.org/10.1007/s10639-024-13092-1
Bravo Santos, C.; Redondo Duque, M.Á.; Marcelino, M.J.; Gomes, A.; Esteves, M.; Mendes, A.J. (2004). Integrando herramientas educativas para el aprendizaje colaborativo de la programación. En Informática educativa: nuevos re-tos, Madrid, pp. 1–12.
Challenger-Pérez, I.; Díaz-Ricardo, Y.; Becerra-García, R. (2014). El lenguaje de programación Python. Ciencias Hol-guín, 20(2), pp. 1–13.
Costa, J. (2023). Using game concepts to improve programming learning: A multi-level meta-analysis. Computer Appli-cations in Engineering Education, 31(4), pp. 1098–1110. https://doi.org/10.1002/cae.22630
Denny, P.; Luxton-Reilly, A.; Tempero, E.; Hendrickx, J. (2011). Understanding the syntax barrier for novices. Pro-ceedings of the 16th Annual Joint Conference on Innovation and Technology in Computer Science Education (ITiCSE’11), New York: ACM, pp. 208–212. https://doi.org/10.1145/1999747.1999807
Figueiredo, J.; García-Peñalvo, F.J. (2020). Increasing student motivation in computer programming with gamifica-tion. Proceedings of the 2020 IEEE Global Engineering Education Conference (EDUCON), pp. 997–1000. https://doi.org/10.1109/EDUCON45650.2020.9125283
Fuentes-Rosado, J.I.; Moo-Medina, M. (2017). Dificultades de aprender a programar. Revista Digital Educación en In-geniería, 12(24), pp. 76–82. https://doi.org/10.26507/rei.v12n24.728
Kadar, R.; Wahab, N.A.; Othman, J.; Shamsuddin, M.; Mahlan, S.B. (2021). A study of difficulties in teaching and learning programming: A systematic literature review. International Journal of Academic Research in Progressive Education and Development, 10(3), pp. 597–618. https://doi.org/10.6007/IJARPED/v10-i3/11100
Maskeliūnas, R.; Kulikajevas, A.; Blažauskas, T.; Damaševičius, R.; Swacha, J. (2020). An interactive serious mobile game for supporting the learning of programming in JavaScript in the context of eco-friendly city management. Computers, 9(4), 102. https://doi.org/10.3390/computers9040102
Next Education India Pvt. Ltd. (s.f.). Programming Hub – About us. India. https://programminghub.io/about-programming-hub
Nicolajsen, S.M.; Nielsen, S.; Carlsen, L.M.; et al. (2024). Programming education across disciplines: a nationwide study of Danish higher education. Higher Education. https://doi.org/10.1007/s10734-024-01345-4
Revelo Sánchez, O.; Collazos Ordoñez, C.A.; Jiménez Toledo, J.A. (2018). La gamificación como estrategia didáctica para la enseñanza/aprendizaje de la programación: Un mapeo sistemático de literatura. Lámpsakos, 19, pp. 31–46. https://doi.org/10.21501/21454086.2347
Robins, A.; Rountree, J.; Rountree, N. (2003). Learning and Teaching Programming: A Review and Discussion. Com-puter Science Education, 13(2), pp. 137–172. https://doi.org/10.1076/csed.13.2.137.14200
Rucker, R. (2023). Raising Learner Satisfaction in Online Computer Programming and Information Technology Cours-es: One Instructor’s Five Successful Strategies. Journal of Open, Flexible and Distance Learning, 27, pp. 54–63. https://doi.org/10.61468/jofdl.v27i1.541
Sailer, M.; Homner, L. (2020). The gamification of learning: A meta-analysis. Educational Psychology Review, 32, pp. 77–112. https://doi.org/10.1007/s10648-019-09498-w
Shuhidan, M.; Hamilton, M.; D’Souza, D. (2011). Understanding novice programmer difficulties via guided learning. Proceedings of the 16th Annual Conference on Innovation and Technology in Computer Science Education (ITiCSE’11), pp. 213–217. https://doi.org/10.1145/1999747.1999808
SoloLearn Inc. (s.f.). SoloLearn: Learn to Code. https://www.sololearn.com/
Swacha, J.; Queirós, R.; Paiva, J.C. (2019). Towards a framework for gamified programming education. International Symposium on Educational Technology (ISET), IEEE, pp. 144–149. https://doi.org/10.1109/ISET.2019.00038
Swacha, J.; Szydłowska, J. (2023). Does gamification make a difference in programming education? Evaluating FGPE-supported learning outcomes. Education Sciences, 13(10), 984. https://doi.org/10.3390/educsci13100984
Tamara, L. (2024). El uso del PSeInt como herramienta educativa en el desarrollo del pensamiento lógico de los estu-diantes del I.E.S.T.P. Recuay – Ancash 2023, tesis (Pregrado), Lima, Universidad Nacional de Educación Enrique Guzmán y Valle, Perú. https://repositorio.une.edu.pe/handle/20.500.14039/11196
Tsai, C.W.; Lee, L.Y.; Cheng, Y.P.; et al. (2024). Integrating online meta-cognitive learning strategy and team regulation to develop students’ programming skills, academic motivation, and refusal self-efficacy of Internet use in a cloud classroom. Universal Access in the Information Society, 23, pp. 395–410. https://doi.org/10.1007/s10209-022-00958-9
Vera, P.M.; Moreno, E.J.; Rodríguez, R.A.; Vázquez, M.C.; Vallés, F.E. (2016). Aplicación de técnicas de gamificación para la enseñanza de programación a alumnos de primer año de ingeniería. XI Congreso de Tecnología en Educación y Educación en Tecnología (TE&ET 2016), La Plata, Argentina. https://sedici.unlp.edu.ar/handle/10915/54653
Yahya, N.; Jumaat, N.F. (2023). The Effectiveness of Online Collaborative Learning towards Programming Skills among Undergraduate Students in Learning Programming. Malaysian Journal of Social Sciences and Humanities, 8(7), pp. 1–10. https://doi.org/10.47405/mjssh.v8i7.2398
Zhan, Z.; He, L.; Tong, Y.; Liang, X.; Guo, S.; Lan, X. (2022). The effectiveness of gamification in programming educa-tion: Evidence from a meta-analysis. Computers & Education: Artificial Intelligence, 3, 100096. https://doi.org/10.1016/j.caeai.2022.100096
Zinovieva, I.; Artemchuk, V.; Iatsyshyn, A.; Popov, O.; Kovach, V.; Romanenko, Y.; Radchenko, O. (2021). The use of online coding platforms as additional tools in programming education. Journal of Physics: Conference Series, 1840(1), 012029. https://doi.org/10.1088/1742-6596/1840/1/012029