a study to identify predictors of achievement in an introductory computer science course
In the study reported on here, 65 prospective computer or information science majors (47 male, 18 female) worked through a tutorial on the basics of Perl. All actions were recorded and time-stamped, allowing us to investigate the relationship between six factors that we believed would predict performance in an introductory computer science (CS) course (as measured by course grade) and how much students would learn from the tutorial (as measured by gain score from pre-test to post-test). These factors are: preparation (SAT score, number of previous CS courses taken, and pre-test score), time spent on the tutorial as a whole and on individual sections, amount and type of experimentation, programming accuracy and/or proficiency, approach to materials that involve mathematical formalisms, and approach to learning highly unfamiliar material (string manipulation procedures). Gender differences with respect to these factors were also investigated.Predictors of grade and gain score included SAT score, pre-test score (negatively correlated with gain), time (negatively correlated with gain and grade), and various measures of programming accuracy and/or proficiency---for example, the total number of program runs that contained errors (negatively correlated with grade and gain). Several measures of experimentation predicted gain score. Experimentation also predicted grade, but only as applied to the least familiar tutorial material. Although experimentation was practiced throughout the tutorial by both sexes, male and female students differed with respect to the types of tutorial topics and tasks they experimented with and the degree of experimentation---for example, male students were more likely to write programs not suggested by the tutorial. These findings suggest that a tutorial such as the one used in this study could serve as an instrument to identify students who are likely to succeed (or not) in an introductory CS course, and that instructional interventions to promote achievement should encourage experimentation, reflection on the results of experiments, care and accuracy.
computer science instruction gender and computer science programming instruction