Skip to main content
eScholarship
Open Access Publications from the University of California

Scaling Computer Science Education Through Live Coding and Streaming Systems

  • Author(s): Chen, Hsien-Che
  • Advisor(s): Guo, Philip J
  • et al.
Abstract

The livestreaming medium provides a unique opportunity for coding tutorials and computer science education. Livestreaming promotes dynamic learning between audiences and instructors by allowing live coding, live feedback, and impromptu reaction to the audience. Howevever, livestreaming tutorials are often hard to follow because of a variety of context switches, varying environmental setups, and hiccups in presentation. Other video streaming mediums such as video conference calls allow specific tutor to tutee interactions for communicating coding concepts but lacks scalability and the intuitiveness of an in-person contact received from real time reaction to instructions. We seek to provide high fidelity interactions and communications that is scalable for computer science education through the livestreaming medium by looking at two designed systems: Improv and TutorX. Improv is a programming presentation platform that enables streamers to model live coding settings informed by Mayer’s principles of multimedia learning. Improv enables instructors to synthesize blocks of code, output slides, and create preset waypoints to guide their presentations. A case study on 30 educational videos containing 28 hours of live coding showed that Improv was versatile enough to replicate approximately 96% of the content within those videos. TutorX is a streaming application modeled after video conferences where a tutor teaches a tutee. In our needfinding, tutors in video conferences have expressed difficulties in gauging the tutee's grasp of coding syntax, semantics and concepts. TutorX keeps track of application specific inputs and aggregates that information for the tutor to provide targeted feedback to a specific user or group of users. Tutors can send messages and observe how users are doing during each tutoring session by tracking operating system events through informed “smart” messages in order to gauge how tutees comprehend the material. Tutees can inform tutors via quick question prompts much like clicker questions.

Main Content
Current View