Python Programming Topics That Pose a Challenge for Students

Authors Justyna Szydłowska , Filip Miernik , Marzena Sylwia Ignasiak , Jakub Swacha

Thumbnail PDF


  • Filesize: 0.58 MB
  • 9 pages

Document Identifiers

Author Details

Justyna Szydłowska
  • University of Szczecin, Poland
Filip Miernik
  • University of Szczecin, Poland
Marzena Sylwia Ignasiak
  • University of Szczecin, Poland
Jakub Swacha
  • University of Szczecin, Poland

Cite AsGet BibTex

Justyna Szydłowska, Filip Miernik, Marzena Sylwia Ignasiak, and Jakub Swacha. Python Programming Topics That Pose a Challenge for Students. In Third International Computer Programming Education Conference (ICPEC 2022). Open Access Series in Informatics (OASIcs), Volume 102, pp. 7:1-7:9, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2022)


Learning programming is often considered as difficult, but it would be wrong to assume that all programming topics are equally tough to learn. In this paper, we make use of a gamified programming learning environment submission repository containing records of over 9000 attempts of solving Python exercises to identify topics which pose the largest challenge for students. By comparing students' effort and progress among sets of exercises assigned to respective topics, two topics emerged as especially difficult (Object-oriented programming and Classic algorithms). Also interesting are the identified differences between genders (indicating female students to fare better than male at the initial topics, and the opposite for the most advanced topics), and the scale of effort some students put to succeed with the most difficult exercises (sometimes solved only after tens of failed attempts).

Subject Classification

ACM Subject Classification
  • Applied computing → Interactive learning environments
  • Applied computing → E-learning
  • learning programming
  • programming exercises
  • gamified learning environment
  • learning Python


  • Access Statistics
  • Total Accesses (updated on a weekly basis)
    PDF Downloads


  1. Yorah Bosse and Marco Aurélio Gerosa. Why is programming so difficult to learn? patterns of difficulties related to programming learning mid-stage. SIGSOFT Softw. Eng. Notes, 41(6):1-6, 2017. URL:
  2. Michael P. Bruce-Lockhart and Theodore S. Norvell. Lifting the hood of the computer: program animation with the teaching machine. In 2000 Canadian Conference on Electrical and Computer Engineering. Conference Proceedings. Navigating to a New Era (Cat. No.00TH8492), volume 2, pages 831-835, 2000. URL:
  3. SitiRosminah MD Derus and Ahmad Zamzuri. Difficulties in learning programming: Views of students. In Proc. 1st International Conference on Current Issues in Education, pages 74-78, Yogyakarta, Indonesia, 2019. URL:
  4. Dimitrios Doukakis, Maria Grigoriadou, and Grammatiki Tsaganou. Understanding the programming variable concept with animated interactive analogies. In Proceedings of the The 8th Hellenic European Research on Computer Mathematics & Its Applications Conference (HERCMA’07), 2007. URL:
  5. Michael Eagle and Tiffany Barnes. Experimental evaluation of an educational game for improved learning in introductory computing. In Proceedings of the 40th ACM Technical Symposium on Computer Science Education, SIGCSE '09, pages 321-325, New York, NY, USA, 2009. Association for Computing Machinery. URL:
  6. FGPE Consortium. Framework for Gamified Programming Education, 2020. accessed on 22 April 2022. URL:
  7. Mark Guzdial and Elliot Soloway. Teaching the nintendo generation to program. Commun. ACM, 45(4):17-21, 2002. URL:
  8. Jakub Swacha, Thomas Naprawski, Ricardo Queirós, José Carlos Paiva, José Paulo Leal, Ciro Giuseppe De Vita, Gennaro Mellone, Raffaele Montella, Davor Ljubenkov, Sokol Kosta. Open Source Collection of Gamified Programming Exercises. In Proceedings of the thirty-seventh Information Systems Education Conference ISECON 2021, pages 120-123, Oak Creek, 2021. Foundation for IT education. URL:
  9. Mike Joy, Nathan Griffiths, and Russell Boyatt. The Boss online submission and assessment system. J. Educ. Resour. Comput., 5(3):2-es, 2005. URL:
  10. Päivi Kinnunen. Challenges of teaching and studying programming at a university of technology - viewpoints of students, teachers and the university. Doctoral thesis, Helsinki University of Technology, Espoo, Finland, 2009. URL:
  11. Sohail Iqbal Malik and Jo Coldwell-Neilson. A model for teaching an introductory programming course using ADRI. Education and Information Technologies, 22(3), 2017. URL:
  12. Iain Milne and Glenn Rowe. Difficulties in learning and teaching programming - views of students and tutors. Education and Information Technologies, 7(1):55-66, 2002. URL:
  13. José Carlos Paiva, Ricardo Queirós, José Paulo Leal, Jakub Swacha, and Filip Miernik. An open-source gamified programming learning environment. In Second International Computer Programming Education Conference (ICPEC 2021), volume 91 of OASICS, pages 5.1-5.8, Saarbrücken, Wadern, Germany, 2021. Schloss Dagstuhl - Leibniz-Zentrum für Informatik. URL:
  14. D. N. Perkins, Chris Hancock, Renee Hobbs, Fay Martin, and Rebecca Simmons. Conditions of learning in novice programmers. Journal of Educational Computing Research, 2(1):37-55, 1986. URL:
  15. Paul Piwek and Simon Savage. Challenges with learning to program and problem solve: An analysis of student online discussions. In SIGCSE '20: Proceedings of the 51st ACM Technical Symposium on Computer Science Education, pages 494-499, New York, 2020. ACM. URL:
  16. Yizhou Qian and James Lehman. Students’ misconceptions and other difficulties in introductory programming: A literature review. ACM Trans. Comput. Educ., 18(1), 2017. URL:
  17. Łukasz Radliński and Jakub Swacha. C# or Java? - analysis of student preferences. Studies & Proceedings of Polish Association for Knowledge Management, 58:101-113, 2012. Google Scholar
  18. Philip Sadler, Gerhard Sonnert, Harold Coyle, Nancy Cook-Smith, Jaimie Miller-Friedmann, and Harvard-Smithsonian Center. The influence of teachers' knowledge on student learning in middle school physical science classrooms. American Educational Research Journal, 50(5):1020-1049, 2013. URL:
  19. Simon, Andrew Luxton-Reilly, Vangel V. Ajanovski, Eric Fouh, Christabel Gonsalvez, Juho Leinonen, Jack Parkinson, Matthew Poole, and Neena Thota. Pass Rates in Introductory Programming and in other STEM Disciplines. In Proceedings of the Working Group Reports on Innovation and Technology in Computer Science Education, pages 53-71, Aberdeen, 2019. ACM. URL:
  20. M. Sivasakthi and R. Rajendran. Learning difficulties of 'object-oriented programming paradigm using Java': students' perspective. Indian Journal of Science and Technology, 4(8):983-985, 2011. URL:
  21. Amy B. Woszczynski, Hisham M. Haddad, and Anita F. Zgambo. An IS student’s worst nightmare: Programming courses. In SAIS 2005 Proceedings, 2005. URL:
  22. Büşra Özmen and Arif Altun. Undergraduate Students' Experiences in Programming: Difficulties and Obstacles. Turkish Online Journal of Qualitative Inquiry, 5(3):9-27, 2014. URL: