Code to Concept
See code, memory, and a metaphor move together: interactive multi-view visualizations for CS1 and CS2.
Novices must build an accurate model of what a program does as it runs from static code alone. Single-view tools such as Python Tutor show memory state, but students still struggle to connect code, state, and concept, and a systematic review of 90 visualization-tool papers found the field long on tools and short on rigorous evaluation.
Code to Concept is an open-source web tool with three synchronized panes: the Python code, a diagram of variables and runtime memory, and an instructor-written metaphor, such as a conveyor belt for iteration or a relay race for linked lists. Shared stepping controls keep the views coordinated, and a CS2 variant swaps the metaphor for an abstract structural view aimed at recursion and linked data structures.
In a 12-week randomized trial in a 1,080-student CS1 course (829 consenting), the multi-view tool produced higher end-of-term engagement than Python Tutor with no increase in cognitive load. Students reporting language barriers preferred multiple visuals, and eye-tracking showed code anchoring attention while memory views peaked on linked lists.
People
CORE Lab
- Naaz SibiaPh.D. Candidate, Computer Science, University of Toronto
- Jessica WenUndergraduate Researcher, University of Toronto Mississauga
- Amber RichardsonPh.D. Student, Computing and Software, McMaster University
- Yashika JainFormer Undergraduate Student, CORE Lab
- Khushi MalikFormer Undergraduate Researcher, CORE Lab
- Valeria Ramirez OsorioM.Eng. Student, McMaster University
- Angela Zavaleta BernuyCo-Director, CORE Lab; Assistant Professor, Computing and Software, McMaster University
- Michael LiutCo-Director, CORE Lab; Associate Professor, Teaching Stream, University of Toronto Mississauga
Collaborators
Papers
- Naaz Sibia, Jessica Wen, Amber Richardson, Yashika Jain, Khushi Malik, Bogdan Simion, Carolina Nobre, Angela Zavaleta Bernuy, Andrew Petersen, Michael Liut."Code as Anchor, Memory and Metaphor as Support: Learner Experiences with Multi-View Visualizations" Proceedings of the 2026 ACM Conference on International Computing Education Research Vol. 1. (2026).[doi][]
- Naaz Sibia, Jessica Wen, Amber Richardson, Yashika Jain, Angela Zavaleta Bernuy, Bogdan Simion, Andrew Petersen, Carolina Nobre, Michael Liut."From State to Structure: Towards Abstraction Support in CS2" Proceedings of the 25th Koli Calling International Conference on Computing Education Research. (2025).[doi][]
- Naaz Sibia, Michael Liut, Carolina Nobre."Exploring the Role of Visualization Tools in Enhancing Computing Education: A Systematic Literature Review" EuroVis 2025 - Education Papers. (2025).[doi][]
- Naaz Sibia."Enhancing Novice Programmers? Understanding through Interactive Visualizations and Multiple Representations" Proceedings of the 24th Koli Calling International Conference on Computing Education Research. (2024).[doi][]
- Naaz Sibia, Valeria Ramirez Osorio, Angela Zavaleta Bernuy, Efthimia Aivaloglou, Rutwa Engineer, Andrew Petersen, Michael Liut, Carolina Nobre."Exploring the Impact of Multiple Representations in Introductory Programming: A Pilot Study" Proceedings of the 24th Koli Calling International Conference on Computing Education Research. (2024).[doi][]











