Abstract
Programming skills are an increasingly desirable asset across disciplines; however, learning to program continues to be difficult for many students. To improve pedagogy, we need to better understand the concepts that students find difficult and which have the biggest impact on their learning. Threshold-concept theory provides a potential lens on student learning, focusing on concepts that are troublesome and transformative. However, there is still a lack of consensus as to what the most relevant threshold concepts in programming are. The challenges involved are related to concept granularity and to evidencing some of the properties expected of threshold concepts. In this paper, we report on a qualitative study aiming to address some of these concerns. The study involved focus groups with undergraduate students of different year groups as well as professional software developers so as to gain insights into how perspectives on concepts change over time. Four concepts emerged from the data, where the majority of participants agreed on their troublesome nature—
including abstract classes and data structures. Some of these concepts are considered transformative, too, but the evidence base is weaker. However, even though these concepts may not be considered transformative in the ‘big’ sense of threshold concept theory, we argue the ‘soft’ transformative effect of such concepts means they can provide important guidance for pedagogy and the design of programming courses. Further analysis of the data identified additional concepts that may hinder rather than help the learning of these threshold concepts, which we have called ‘accidental complexities’. We conclude the paper with a critique of the use of threshold concepts as a lens for studying students’ learning of programming.
including abstract classes and data structures. Some of these concepts are considered transformative, too, but the evidence base is weaker. However, even though these concepts may not be considered transformative in the ‘big’ sense of threshold concept theory, we argue the ‘soft’ transformative effect of such concepts means they can provide important guidance for pedagogy and the design of programming courses. Further analysis of the data identified additional concepts that may hinder rather than help the learning of these threshold concepts, which we have called ‘accidental complexities’. We conclude the paper with a critique of the use of threshold concepts as a lens for studying students’ learning of programming.
Original language | English |
---|---|
Article number | 23 |
Number of pages | 27 |
Journal | ACM Transactions on Computing Education (TOCE) |
Volume | 19 |
Issue number | 3 |
Publication status | Published - 16 Jan 2019 |
Keywords
- threshold concepts
- learning programming
- focus groups
- computer science curriculum
- accidental complexities