comparing effective and ineffective behaviors of student programmers
This paper reports on a quantitative evaluation of five years of data collected in the first three programming courses at Virginia Tech. The dataset involves a total of 89,879 assignment submissions by 1,101 different students. Assignment results were partitioned into two groups: scores above 80\% (A/B) and scores below 80\% (C/D/F). To investigate student behaviors that result in differing levels of achievement, all students who consistently received A/B scores and all students who consistently received C/D/F scores were removed from the dataset. A within-subjects comparison of the scores received by the remaining individuals was performed. Further, time and code-size data that is difficult to compare directly between different courses was normalized. This study revealed several significant results. When students received A/B scores, they started earlier and finished earlier than when the same students received C/D/F scores. They also wrote slightly more program code. They did not appear to spend any more time on their work, however. Approximately two-thirds of the A/B scores were received by individuals who started more than a day in advance of the deadline, while approximately two-thirds of the C/D/F scores were received by individuals who started on the last day or later. One possible explanation is that students who start earlier simply have more time to seek assistance when they get stuck.
programming assignment study habits student performance programmer productivity