Background and Context: Multiple studies report that experienced instructors lack consensus on the difficulty of programming tasks for novices. However, adequately gauging task difficulty is needed for alignment: to select and structure tasks in order to assess what students can and cannot do. Objective: The aim of this study was to examine perceived and observed difficulties that novice programmers endure during code composition. Method: This study reports on the in-depth research combining multi-faceted data from observations to students’ perceptions via interviews, think aloud, task ranking and task rating. Findings: Some interesting findings were observed which would not have been revealed through solution analysis on its own. For example, that nesting two loops is perceived as easier than nesting a selection in a loop and that the abstraction mechanism of an enhanced for loop makes it a particularly challenging concept to initially grasp. Implications: Our results augment related work, which are primarily based on instructors’ perceptions, providing insights into difficulties endured by novice programmers and recommendations for task (de)composition and curricular alignment.
CITATION STYLE
Weeda, R., Smetsers, S., & Barendsen, E. (2023). Unraveling novices’ code composition difficulties. Computer Science Education. https://doi.org/10.1080/08993408.2023.2169067
Mendeley helps you to discover research relevant for your work.