Assessment frequency in introductory computer programming disciplines

Introductory computer programming disciplines commonly show a significant failure rate. Although several reasons have been advanced for this state of affairs, we argue that for a beginner student it is hard to understand the difference between know-about disciplines and know-how-to-do-it disciplines, such as computer programming. This leads to failure because when students understand they are not able to solve a programming problem it is usually too late to catch all the time meanwhile lost. In order to make students critically analyse their progress, instructors have to provide them with realistic indicators of their performance. To achieve this awareness and to trigger corrective actions in a timely manner there is a need to increase assessment frequency. This paper discusses how this can be done, analyses benefits of the proposed approach and presents data on the effects of changes in assessment frequency for a university first year course in fundamentals of computer programming.

[1]  Paul Roe,et al.  Collaborative learning: towards a solution for novice programmers , 2008, ACE '08.

[2]  Ramu Naidoo,et al.  Errors made by Students in a Computer Programming Course , 2011 .

[3]  Miguel-Ángel Sicilia,et al.  The Knowledge Society: a manifesto for knowledge and learning , 2005, Int. J. Knowl. Learn..

[4]  Janet Rountree,et al.  Learning and Teaching Programming: A Review and Discussion , 2003, Comput. Sci. Educ..

[5]  Iain Milne,et al.  Difficulties in Learning and Teaching Programming—Views of Students and Tutors , 2002, Education and Information Technologies.

[6]  William R. Cook,et al.  High-level problems in teaching undergraduate programming languages , 2008, SIGP.

[7]  Mordechai Ben-Ari,et al.  Constructivism in computer science education , 1998, SIGCSE '98.

[8]  Kirsti Ala-Mutka,et al.  A study of the difficulties of novice programmers , 2005, ITiCSE '05.

[9]  Leon E. Winslow,et al.  Programming pedagogy—a psychological overview , 1996, SGCS.

[10]  Anabela Gomes,et al.  Learning to program - difficulties and solutions , 2007 .

[11]  John Leaney,et al.  Introductory programming, criterion-referencing, and bloom , 2003, SIGCSE.

[12]  Said Hadjerrouit Constructivism as guiding philosophy for software engineering education , 2005, SGCS.

[13]  Elliot Soloway,et al.  Novice mistakes: are the folk wisdoms correct? , 1986, CACM.

[14]  Tom Butler,et al.  Learning management systems: a new beginning in the management of learning and knowledge , 2005, Int. J. Knowl. Learn..

[15]  Tom Wulf,et al.  Constructivist approaches for teaching computer programming , 2005, SIGITE '05.

[16]  Andrew K. Lui,et al.  Saving weak programming students: applying constructivism in a first programming course , 2004, SGCS.

[17]  Leesa Murray,et al.  Teaching programming to beginners - choosing the language is just the first step , 2000, ACSE '00.

[18]  Margaret Devine,et al.  Automated assessments and student learning , 2007, Int. J. Learn. Technol..

[19]  Richard P. Gabriel Draft report on requirements for a common prototyping system , 1989, SIGP.