Integrating Data Structures and Algorithms in K-12 Education using Block-based Programming
Ashwin Jagadeesha, Pranathi Rayavaram, Justin Marward, Sashank Narain,, Claire Seungeun Lee

TL;DR
This paper introduces DSAScratch, an extension of Scratch that simplifies learning data structures and algorithms for K-12 students through an intuitive block-based interface, showing promising preliminary educational benefits.
Contribution
The paper presents a novel block-based extension, DSAScratch, integrating data structures and algorithms into Scratch to improve K-12 students' understanding of programming concepts.
Findings
70% of students understood key data structures and algorithms concepts.
90% found DSAScratch enhanced their understanding during workshops.
Students would recommend DSAScratch to peers.
Abstract
This paper describes the design and evaluation of DSAScratch, an extension to Scratch, a widely used block-based programming language. The DSAScratch framework implements advanced data structures such as arrays, sets, dictionaries, and searching and sorting algorithms. By presenting these concepts in an intuitive block-based interface, these blocks abstract away technical details and simplify data structures and algorithms concepts for K-12 students to grasp and apply to programming problems more readily. A preliminary evaluation of the tool's usability and learning outcomes is presented in this paper. Given the information we have gathered about DSAScratch, we show that the extension is beneficial for students to develop a deeper understanding of programming and an intuitive understanding of these concepts in high school. We present the methodology and preliminary results of a user…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsTeaching and Learning Programming · Software Testing and Debugging Techniques · Software Engineering Research
