ABSTRACT
For students to write code, they should be able to understand the purpose of code written by others. How students learn to read code at a higher-level beyond tracing (mental execution) is not well-understood. The goal of my research is to understand how to teach students to read code at a higher-level.
- Ruven Brooks. 1983. Towards a theory of the comprehension of computer programs. International journal of man-machine studies 18, 6 (1983), 543–554.Google ScholarCross Ref
- Malcolm Corney, Donna Teague, Alireza Ahadi, and Raymond Lister. 2012. Some empirical results for neo-Piagetian reasoning in novice programmers and the relationship to code explanation questions. In Proceedings of the fourteenth australasian computing education conference, Vol. 123. 77–86.Google ScholarDigital Library
- Kathryn Cunningham, Sarah Blanchard, Barbara Ericson, and Mark Guzdial. 2017. Using tracing and sketching to solve programming problems: replicating and extending an analysis of what students draw. In Proceedings of the 2017 ACM Conference on International Computing Education Research. 164–172.Google ScholarDigital Library
- Adrienne Decker, Lauren Margulieux, and Briana Morrison. 2019. Using the SOLO Taxonomy to Understand Subgoal Labels Effect in CS1. ICER’19 - Proceedings of the 2019 ACM Conference on International Computing Education Research, 209–217. https://doi.org/10.1145/3291279.3339405Google ScholarDigital Library
- Françoise Détienne and Elliot Soloway. 1990. An empirically-derived control structure for the process of program understanding. International Journal of Man-Machine Studies 33, 3 (1990), 323–342.Google ScholarDigital Library
- Mohammed Hassan and Craig Zilles. 2021. Exploring ‘reverse-tracing’ Questions as a Means of Assessing the Tracing Skill on Computer-based CS 1 Exams. In Proceedings of the 17th ACM Conference on International Computing Education Research. 115–126.Google ScholarDigital Library
- Mohammed Hassan and Craig Zilles. 2022. On Students’ Ability to Resolve their own Tracing Errors through Code Execution. In Proceedings of the 53rd ACM Technical Symposium on Computer Science Education. 251–257.Google ScholarDigital Library
- Cruz Izu and Claudio Mirolo. 2020. Comparing small programs for equivalence: A code comprehension task for novice programmers. In Proceedings of the 2020 ACM Conference on Innovation and Technology in Computer Science Education. 466–472.Google ScholarDigital Library
- Raymond Lister, Elizabeth S Adams, Sue Fitzgerald, William Fone, John Hamer, Morten Lindholm, Robert McCartney, Jan Erik Moström, Kate Sanders, Otto Seppälä, Beth Simon, and Lynda Thomas. 2004. A multi-national study of reading and tracing skills in novice programmers. ACM SIGCSE Bulletin 36, 4 (2004), 119–150.Google ScholarDigital Library
- Claudio Mirolo, Cruz Izu, and Emanuele Scapin. 2020. High-school students’ mastery of basic flow-control constructs through the lens of reversibility. In Proceedings of the 15th Workshop on Primary and Secondary Computing Education. 1–10.Google ScholarDigital Library
- Nancy Pennington. 1987. Stimulus structures and mental representations in expert comprehension of computer programs. Cognitive psychology 19, 3 (1987), 295–341.Google Scholar
- Donna Teague, Malcolm Corney, Alireza Ahadi, and Raymond Lister. 2013. A qualitative think aloud study of the early neo-piagetian stages of reasoning in novice programmers. In Proceedings of the 15th Australasian Computing Education Conference [Conferences in Research and Practice in Information Technology, Volume 136]. Australian Computer Society, 87–95.Google Scholar
- Donna Teague and Raymond Lister. 2014. Longitudinal think aloud study of a novice programmer. In Conferences in Research and Practice in Information Technology Series.Google Scholar
- Benjamin Xie, Greg L Nelson, and Andrew J Ko. 2018. An explicit strategy to scaffold novice program tracing. In Proceedings of the 49th ACM Technical Symposium on Computer Science Education. 344–349.Google ScholarDigital Library
Recommendations
On Students' Usage of Tracing for Understanding Code
SIGCSE 2023: Proceedings of the 54th ACM Technical Symposium on Computer Science Education V. 1Explain in Plain English (EiPE) questions evaluate whether students can understand and explain the high-level purpose of code. We conducted a qualitative think-aloud study of introductory programming students solving EiPE questions. In this paper, we ...
Software-only system-level record and replay in wireless sensor networks
IPSN '15: Proceedings of the 14th International Conference on Information Processing in Sensor NetworksWireless sensor networks (WSNs) are plagued by the possibility of bugs manifesting only at deployment. However, debugging deployed WSNs is challenging for several reasons---the remote location of deployed sensor nodes, the non- determinism of execution ...
TARDIS: software-only system-level record and replay in wireless sensor networks
IPSN '15: Proceedings of the 14th International Conference on Information Processing in Sensor NetworksWireless sensor networks (WSNs) are plagued by the possibility of bugs manifesting only at deployment. However, debugging deployed WSNs is challenging for several reasons---the remote location of deployed sensor nodes, the non-determinism of execution ...
Comments