Technical Report 2009-002

Ways of Thinking and Practising in Introductory Programming

Anna Eckerdal



In computer programming education it is generally acknowledged that students learn practical skills and concepts largely by practising. In addition it is widely reported that many students face great difficulties in their learning, despite great efforts during many decades to improve programming education.

The paper investigates and discusses the relation between novice computer programming students' conceptual and practical learning. To this end the present research uses Ways of Thinking and Practising, WTP as a theoretical framework. In the present research Thinking is discussed in terms of students' learning of concepts, while Practising is discussed as common novice students' programming activities.

Based on two empirical studies it is argued that there exists a mutual and complex dependency between conceptual learning and practise in students' learning process. It is hard to learn one without the other, and either of them can become an obstacle that hinders further learning. Empirical findings point to the need to research the relationship between conceptual understanding and practise to better understand students' learning process.

The paper demonstrates a way to research how students' learning of practise and concepts are related. Results from a phenomenographic analysis on novice programming students' understanding of some central concepts are combined with an analysis based on elements from variation theory of the students' programming activities. It is shown that different levels of proficiency in programming activities as well as qualitatively different levels of conceptual understandings are related to dimensions of variation. The dimensions of variation serve as interfaces between the activities and conceptual understandings. If a dimension is discerned, this can facilitate coming to richer conceptual understandings and learning additional activities.

Available as PDF (262 kB, no cover)

Download BibTeX entry.