TY - JOUR
T1 - An analysis of common errors leading to excessive student struggle on homework problems in an introductory programming course
AU - Alzahrani, Nabeel
AU - Vahid, Frank
AU - Edgcomb, Alex Daniel
AU - Lysecky, Roman
AU - Lysecky, Susan
N1 - Publisher Copyright: © American Society for Engineering Education, 2018.
PY - 2018/6/23
Y1 - 2018/6/23
N2 - 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.
AB - 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.
UR - http://www.scopus.com/inward/record.url?scp=85051237678&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=85051237678&partnerID=8YFLogxK
M3 - Conference article
SN - 2153-5965
VL - 2018-June
JO - ASEE Annual Conference and Exposition, Conference Proceedings
JF - ASEE Annual Conference and Exposition, Conference Proceedings
T2 - 125th ASEE Annual Conference and Exposition
Y2 - 23 June 2018 through 27 December 2018
ER -