TY - GEN
T1 - Program Comprehension with Physical Computing
T2 - 26th ACM Conference on Innovation and Technology in Computer Science Education, ITiCSE 2021
AU - Jayathirtha, Gayithri
AU - Kafai, Yasmin B.
N1 - Publisher Copyright:
© 2021 ACM.
PY - 2021/6/26
Y1 - 2021/6/26
N2 - Comprehending programs is key to learning programming. Previous studies highlight novices' naive approaches to comprehending the structural, functional, and behavioral aspects of programs. And yet, with the majority of them examining on-screen programming environments, we barely know about program comprehension within physical computing-a common K-12 programming context. In this study, we qualitatively analyzed think-aloud interview videos of 22 high school students individually comprehending a given text-based Arduino program while interacting with its corresponding functional physical artifact to answer two questions: 1) How do novices comprehend the given text-based Arduino program? And, 2) What role does the physical artifact play in program comprehension? We found that novices mostly approached the program bottom-up, initially comprehending structural and later functional aspects, along different granularities. The artifact provided two distinct modes of engagement, active and interactive, that supported the program's structural and functional comprehension. However, behavioral comprehension i.e. understanding program execution leading to the observed outcome was inaccessible to many. Our findings extend program comprehension literature in two ways: (a) it provides one of the very few accounts of high school students' code comprehension in a physical computing context, and, (b) it highlights the mediating role of physical artifacts in program comprehension. Further, they point directions for future pedagogical and tool designs within physical computing to better support students' distributed program comprehension.
AB - Comprehending programs is key to learning programming. Previous studies highlight novices' naive approaches to comprehending the structural, functional, and behavioral aspects of programs. And yet, with the majority of them examining on-screen programming environments, we barely know about program comprehension within physical computing-a common K-12 programming context. In this study, we qualitatively analyzed think-aloud interview videos of 22 high school students individually comprehending a given text-based Arduino program while interacting with its corresponding functional physical artifact to answer two questions: 1) How do novices comprehend the given text-based Arduino program? And, 2) What role does the physical artifact play in program comprehension? We found that novices mostly approached the program bottom-up, initially comprehending structural and later functional aspects, along different granularities. The artifact provided two distinct modes of engagement, active and interactive, that supported the program's structural and functional comprehension. However, behavioral comprehension i.e. understanding program execution leading to the observed outcome was inaccessible to many. Our findings extend program comprehension literature in two ways: (a) it provides one of the very few accounts of high school students' code comprehension in a physical computing context, and, (b) it highlights the mediating role of physical artifacts in program comprehension. Further, they point directions for future pedagogical and tool designs within physical computing to better support students' distributed program comprehension.
KW - electronic textiles
KW - physical computing
KW - program comprehension
KW - secondary education
UR - http://www.scopus.com/inward/record.url?scp=85109047639&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=85109047639&partnerID=8YFLogxK
U2 - 10.1145/3430665.3456371
DO - 10.1145/3430665.3456371
M3 - Conference contribution
AN - SCOPUS:85109047639
T3 - Annual Conference on Innovation and Technology in Computer Science Education, ITiCSE
SP - 143
EP - 149
BT - ITiCSE 2021 - Proceedings of the 26th ACM Conference on Innovation and Technology in Computer Science Education
PB - Association for Computing Machinery
Y2 - 26 June 2021 through 1 July 2021
ER -