Recursion in Secondary Computer Science Education: A Comparative Study of Visual Programming Approaches
Metadata only
Date
2024-03Type
- Conference Paper
Abstract
While recursion is a fundamental technique in computer programming, it is challenging for novices, for example since it requires tracing non-linear and hierarchical sequences of execution. Though algorithm visualizations and visual programming may be helpful, such tools need to offer sufficiently expressive environments that support active, constructivist learning via exploration and experimentation. In this study, we investigated whether Algot, a visual programming language that relies on a novel programming-by-demonstration paradigm, is effective for teaching recursion to 14-17 year old students, and whether it compares favorably to the popular visual programming language Scratch. We conducted an experimental study with 23 participants where they learned recursion in a video tutorial using Algot and Scratch, worked out code exercises in each respective language, and then solved a post-test on recursion. Despite the participants being more familiar with Scratch than Algot, our results indicated that students instructed with Algot demonstrated a significantly better understanding of recursion (Bayes Factor = 14.09, p = 0.005, Cohen's d = 1.30). We also found that students reported a similar level of enjoyment of each language. These findings provide preliminary evidence about the effectiveness of the programming-by-demonstration paradigm, as implemented in Algot, in aiding the comprehension of complex programming concepts like recursion. Show more
Publication status
publishedExternal links
Book title
SIGCSE 2024: Proceedings of the 55th ACM Technical Symposium on Computer Science EducationPages / Article No.
Publisher
Association for Computing MachineryEvent
Edition / version
v1Subject
visual programming; block-based programming; recursion; programming by demonstration; educational technology; secondary educationOrganisational unit
02150 - Dep. Informatik / Dep. of Computer Science
Notes
Conference lecture held on March 22, 2024.More
Show all metadata