Analysis of typical programming mistakes made by first and second year IT students
The research paper contains a review and analysis of common programming mistakes made by first and second year students of Computer Science. The data were collected during the courses entitled “Algorithmics and Data Structures” and “Numerical Methods”, where students have to write programs in the C++ language. The article includes examples of three selected mistake types. A comparison of mistakes made by first and second year students is presented. The analysis carried out shows that the percentage of mistakes made decreases when the students are in the second year, but three types of mistakes demonstrate the opposite trend. It can be concluded that those three types of mistakes are related to the course of Numerical Methods, where students have to deal with a significant amount of mathematical expressions. The results show that the students have the most significant problems with memory management.
programming mistakes; C ; education
E. Soloway, S. Iyengar, editors, Empirical Studies of Programmers: Papers Presented at the First Workshop on Empirical Studies of Programmers, Intellect Books (1986).
M. C. Jadud. Methods and tools for exploring novice compilation behaviour. In Proceedings of the Second International Workshop on Computing Education Research, ICER ’06, New York, NY, USA (2006) 73-84.
P. Denny, A. Luxton-Reilly, E. Tempero, All syntax errors are not equal, In Proceedings of the 17th ACM Annual Conference on Innovation and Technology in Computer Science Education, ITiCSE’12, New York, NY, USA (2012) 75-80.
J. Jackson, M. Cobb, C. Carver, Identifying top Java errors for novice programmers, In Frontiers in Education, 2005. FIE ’05. Proceedings 35th Annual Conference (2005).
M. Hristova, A. Misra, M. Rutter, R. Mercuri, Identifying and correcting Java programming errors for introductory computer science students, In Proceedings of the 34th SIGCSE Technical Symposium on Computer Science Education, SIGCSE ’03, New York, NY, USA (2003) 153-156.
T. Sirkiä, J. Sorva, Exploring programming misconceptions: an analysis of student mistakes in visual program simulation exercises, In Proceedings of the 12th Koli Calling International Conference on Computing Education Research (2012) 19-28.
N. C. C. Brown, M. Kölling, D. McCall, I. Utting. Blackbox, A large scale repository of novice programmers’ activity, In Proceedings of the 45thACM Technical Symposium on Computer Science Education, SIGCSE ’14, New York, NY, USA (2014) 223-228.
A. Altadmri, N. C. Brown, 37 million compilations: Investigating novice programming mistakes in large-scale student data, In Proceedings of the 46th ACM Technical Symposium on Computer Science Education (2015)
N. C. Brown, A. Altadmri, Investigating novice programming mistakes: educator beliefs vs. student data, In Proceedings of the tenth annual conference on International computing education research (2014) 43-50.
A. Ahadi, R. Lister, S. Lal, A. Hellas, Learning programming, syntax errors and institution-specific factors, In Proceedings of the 20th Australasian computing education conference (2018) 90-96.
N. C. Brown, A. Altadmri, Novice Java programming mistakes: Large-scale data vs. educator beliefs, ACM Transactions on Computing Education (TOCE), 17(2) (2017) 1-21.
Š. Hubálovský, J. Šedivý, Mistakes in object oriented programming, Zeszyty Naukowe Wydziału ETI Politechniki Gdańskiej, Technologie Informacyjne, 18, (2010) 205-210.
M. Süß, C. Leopold, Common mistakes in OpenMP and how to avoid them, In International Workshop on OpenMP, Springer, Berlin, Heidelberg (2005) 312-323.
A. S. Júnior, J. C. A. de Figueiredo, D. Serey, Analyzing the Impact of Programming Mistakes on Students' Programming Abilities, In Brazilian Symposium on Computers in Education, vol. 30, No. 1, (2019) 369.
S. Andreas, S. Susanna, An Empirical Investigation into Programming Language Syntax. Trans. Comput. Educ. 13, 4, Article 19 (2013).
H. Keuning, J. Jeuring, B. Heeren, A systematic literature review of automated feedback generation for programming exercises. ACM Transactions on Computing Education (TOCE), 19(1) (2018) 1-43.
This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.