A qualitative think-aloud study of novice programmers' code writing strategies

This paper presents part of a larger long term study into the cognitive aspects of the early stages of learning to write computer programs Tasks designed to trigger learning events were used to provide the opportunity to observe student learning, in terms of the development and modification of cognitive structures or schemata, during think aloud sessions. A narrative analysis of six students' attempts to solve these tasks is presented. The students' progression in learning and attitudinal approaches to learning is examined and provides some insight into the cognitive processes involved in learning computer programming.

[1]  L. S. Vygotksy Mind in society: the development of higher psychological processes , 1978 .

[2]  Raymond Lister,et al.  A qualitative think aloud study of the early neo-piagetian stages of reasoning in novice programmers , 2013, ACE '13.

[3]  Kenneth Spencer,et al.  The psychology of educational technology and instructional media , 1988 .

[4]  Sue Fitzgerald,et al.  Ability to 'explain in plain english' linked to proficiency in computer-based programming , 2012, ICER '12.

[5]  Renee Hobbs,et al.  Conditions of Learning in Novice Programmers , 1986 .

[6]  Susan Wiedenbeck,et al.  Navigation and comprehension of programs by novice programmers , 2001, Proceedings 9th International Workshop on Program Comprehension. IWPC 2001.

[7]  John Sweller,et al.  Cognitive Load Theory: Instructional Implications of the Interaction between Information Structures and Cognitive Architecture , 2004 .

[8]  K. A. Ericsson,et al.  Protocol Analysis: Verbal Reports as Data , 1984 .

[9]  Stuart Reges,et al.  Back to basics in CS1 and CS2 , 2006, SIGCSE '06.

[10]  Maarten van Someren,et al.  The Think Aloud Method: A Practical Guide to Modelling Cognitive Processes , 1994 .

[11]  Richard E. Mayer,et al.  The sequencing of instruction and the concept of assimilation-to-schema , 1977 .

[12]  Colin J. Fidge,et al.  Further evidence of a relationship between explaining, tracing and writing skills in introductory programming , 2009, ITiCSE.

[13]  Richard E. Pattis,et al.  Karel the Robot: A Gentle Introduction to the Art of Programming , 1994 .

[14]  Thomas Brush,et al.  A Summary of Research Exploring Hard and Soft Scaffolding for Teachers and Students Using a Multimedia Supported Learning Environment , 2002 .