ABSTRACT
This paper describes a tool to help instructors guide learners through code examples. The tool captures low-level changes made to a group of files using a popular code editor. Then it allows the programming session to be replayed so that an author can annotate the evolution of the code and explain the reasons behind important decisions. The author-supplied narrative can include text, code highlights, media (hand-drawn pictures, screenshots, videos, and audio files), and self-grading questions. The combination of the narrative and the evolving code is called a code 'playback'. Playbacks are viewable in a web browser.
The paper also discusses the experiences of one instructor's use of the tool in several programming-focused courses over the last two years. The tool provides instructors with an alternative to live coding that allows one to describe code faster and with fewer mistakes. In addition, it provides a way for an instructor to build up relevant content that can replace a traditional textbook. The results of several anonymous student surveys are discussed.
- A. Collins, J. S. Brown, & A. Holum. 1991. Cognitive apprenticeship: Making thinking visible. American Educator, 15(3), 6--11.Google Scholar
- Adrienne Decker, Briana B. Morrison, Austin Cory Bart. 2022. Using Subgoal Labeling in Teaching CS1. SIGCSE (2) 2022: 1197Google Scholar
- Briana B. Morrison, Lauren E. Margulieux, Barbara Ericson, Mark Guzdial. 2016. Subgoals Help Students Solve Parsons Problems. SIGCSE 2016: 42--47Google Scholar
- T. Omori, K. Maruyama. 2008. A Change-aware Development Environment by Recording Editing Operations of Source Code. Proceedings of 5th Working Conference on Mining Software Repositories (MSR '08), pp. 31--34 (2008/05)Google ScholarDigital Library
- Jungkook Park, Yeong Hoon Park, Suin Kim, Alice Oh. 2017. Eliph: Effective Visualization of Code History for Peer Assessment in Programming Education. Proceeding CSCW '17 Companion of the 2017 ACM Conference on Computer Supported Cooperative Work and Social Computing Pages 33--36Google Scholar
- Y. Yoon, B. Myers, S. Koo. 2013. Visualization of Fine-Grained Code Change History. IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC 2013) September 15-19, 2013. San Jose, California, USA. pp. 119--126.Google ScholarCross Ref
- https://code.visualstudio.comGoogle Scholar
- https://marketplace.visualstudio.com/items?itemName=markm208.storytellerGoogle Scholar
Index Terms
- Storyteller: Guiding Students Through Code Examples
Recommendations
Storyteller Demo: Guiding Students Through Code Examples
SIGCSE 2023: Proceedings of the 54th ACM Technical Symposium on Computer Science Education V. 2There is value in instructors guiding students through complex programming problems. An instructor can describe how they start a program, decide what to do next, recover from poor problem-solving choices, and check their work. Worked examples give ...
Storyteller: A New Medium for Guiding Students Through Code Examples (Abstract Only)
SIGCSE '18: Proceedings of the 49th ACM Technical Symposium on Computer Science EducationThere is value in instructors guiding students through complex programming problems. An instructor can describe how they start a program, decide what to do next, recover from poor problem solving choices, and check their work. Worked examples give ...
A Qualitative Analysis of Lecture Videos and Student Feedback on Static Code Examples and Live Coding: A Case Study
ACE '21: Proceedings of the 23rd Australasian Computing Education ConferenceOne of the goals of computing education research is to understand and document the effectiveness of pedagogical strategies in computing. Among the many methods available to teach programming, two commonly used techniques to present code in Computer ...
Comments