A systematic review of interventions to improve the pass rates of introductory programming courses yielded data for 60 courses. On average, the interventions improved pass rates by 12.8 absolute percentage points.
Tables 3 through 7 usefully summarize the effectiveness of 13 different kinds of intervention, grouped under five primary intervention categories. For example, Table 3 shows that for the six cases where pair programming was the intervention, the pass rate improved on average by 9.6 absolute percentage points. Table 4 shows that for the four cases where a preliminary course (CS0) was the intervention, the pass rate improved on average by 10.5 absolute percentage points. Table 5 shows that for the seven cases where the use of media computation was the intervention, the pass rate improved on average by 14.7 absolute percentage points. Table 6 shows that for the four cases where reducing class size was the intervention, the pass rate improved on average by 17.8 absolute percentage points. Table 7 shows that for the three cases where extreme apprenticeship was the intervention, the pass rate improved on average by 16.5 absolute percentage points. No statistically significant differences in effectiveness were found between the five primary intervention categories.
Section 4.2 provides a good account of the limitations of this kind of study. Nonetheless, many readers will find themselves agreeing with the authors’ conclusions that those applying interventions are making a difference and that there is no one best kind of intervention. This paper is very strongly recommended to computer science faculty.