An analysis of common errors leading to excessive student struggle on homework problems in an introductory programming course

Nabeel Alzahrani, Frank Vahid, Alex Daniel Edgcomb, Roman L Lysecky, Susan Lysecky

Research output: Contribution to journalConference article

1 Scopus citations

Abstract

Students make many errors in an introductory programming course (aka CS 1). While previous research reports common errors, some errors are normal, being corrected by students in a reasonable amount of time, and being part of the learning process. However, some errors may lead to frustration due to excessive struggle, which may lead to student attrition. We defined a struggle metric using a combination of excessive time spent and excessive attempts, relative to other students in a course and reasonable thresholds. We analyzed struggle on 78 short, auto-graded coding homework problems for an 80-student Spring 2017 introductory C++ programming course at a research university. We found the struggle rate to be 10-15%. Our main focus was to determine the errors that led to such struggle, and thus we manually examined the student submissions for the 10 homework problems having the highest struggle rates. We described the errors and potential underlying student misconceptions that seemed to lead to that struggle. We found that most common errors belong to the following: nested loops, else-if vs. multiple if, random range, input/output, for loop and vector, for loop and if, vector index, negated loop expression, and boolean expressions. Having a deeper understanding of these common errors may aid teachers and authors to help students avoid or correct such errors, thus reducing struggle, which may reduce frustration and potential attrition.

Original languageEnglish (US)
JournalASEE Annual Conference and Exposition, Conference Proceedings
Volume2018-June
StatePublished - Jun 23 2018
Event125th ASEE Annual Conference and Exposition - Salt Lake City, United States
Duration: Jun 23 2018Dec 27 2018

ASJC Scopus subject areas

  • Engineering(all)

Fingerprint Dive into the research topics of 'An analysis of common errors leading to excessive student struggle on homework problems in an introductory programming course'. Together they form a unique fingerprint.

  • Cite this