"I Feel Like I'm Teaching in a Gladiator Ring": Barriers and Benefits of Live Coding in Classroom Settings
Caroline Berger, David Weintrop, Niklas Elmqvist
TL;DR
This study investigates barriers and benefits of live coding in large CS classrooms by interviewing instructors, teaching assistants, and students and employing prototypes to explore design opportunities. It identifies barriers such as resource-constrained environments and stage fright, and benefits like modeling debugging strategies and enabling active learning. The authors derive design guidelines for live coding tools and classroom practices that emphasize risk-taking, attention directing, and teacher development. The findings hold practical implications for classroom design, professional development, and tooling to promote authentic programming practices in real-world educational settings.
Abstract
Live coding for teaching-synchronously writing software in front of students-can be an effective method for engaging students and instilling practical programming skills. However, not all settings are conducive to live coding and not all instructors are successful in this challenging task. We present results from a study involving university instructors, teaching assistants, and students identifying both barriers and benefits of live coding. Physical infrastructure, a positive classroom community with psychological safety, and opportunities for teacher development are practical considerations for live coding. In order for live coding to be an active learning experience, we recommend that tools support multiple mechanisms for engaging students, directing audience attention, and encouraging student-led live coding.
