Integrating Data Structures and Algorithms in K-12 Education using Block-based Programming
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 study conducted with ten high school students. During the user study, 70 understood the key ideas behind DSAScratch implemented data structures and algorithms through a mixture of lectures and hands-on activities. We show that DSAScratch was also an important part of the workshop for 90 who participated, as it enhanced their understanding of algorithms and data structures. Furthermore, they indicated that they would recommend DSAScratch to their peers.
READ FULL TEXT