Identification and Evaluation of Predictors for Learning Success and of Models for Teaching Computer Programming in Contemporary Contexts

Abstract

Introductory undergraduate computer programming courses are renowned for higher than average failure and withdrawal rates when compared to other subject areas. The closer partnership between higher education and the rapidly expanding digital technology industry, as demonstrated by the establishment of new Degree Apprenticeships in computer science and digital technologies, requires efficient and effective means for teaching programming skills. This research, therefore, aimed to identify reliable predictors of success in learning programming or vulnerability to failure. The research also aimed to evaluate teaching methods and remedial interventions towards recommending a teaching model that supported and engaged learners in contemporary contexts that were relevant to the workplace. Investigation of qualifications designed to prepare students for undergraduate computer science courses revealed that A-level entrants achieved significantly higher programming grades than BTEC students. However, there was little difference between the grades of those with and those without previous qualifications in computing or ICT subjects. Analysis of engagement metrics revealed a strong correlation between extent of co-operation and programming grade, in contrast to a weak correlation between programming grade and code understanding. Further analysis of video recordings, interviews and observational records distinguished between the type of communication that helped peers comprehend tasks and concepts, and other forms of communication that were only concerned with completing tasks. Following the introduction of periodic assessment, essentially converting a single final assessment to three staged summative assessment points, it was found that failing students often pass only one of the three assignment parts. Furthermore, only 10% of those who failed overall had attempted all three assignments. Reasons for failure were attributed to ‘surface’ motivations (such as regulating efforts to achieve a minimum pass of 40%), ineffective working habits or stressful personal circumstances rather than any fundamental difficulty encountered with subject material. A key contribution to pedagogical practice made by this research is to propose an ‘incremental’ teaching model. This model is informed by educational theory and empirical evidence and comprises short cycles of three activities: presenting new topic information, tasking students with a relevant exercise and then demonstrating and discussing the exercise solution. The effectiveness of this model is evidenced by increased engagement, increased quiz scores at the end of each teaching session and increased retention of code knowledge at the end of the course

    Similar works