Source Academy - A Community-Developed Environment for Teaching Programming

Speaker 1: Dr Boyd Anderson, Lecturer, School of Computing
Speaker 2: Dr Martin Henz, Associate Professor, School of Computing

Chaired by
Dr Manuel RIGGER, Assistant Professor, School of Computing

03 Feb 2023 Friday, 03:00 PM to 04:00 PM

MR1. COM1-03-19 and via zoom (Hybrid)

In 2012, the authors took responsibility for the first-semester computer science course CS1101S with 45 students. This talk reviews the subsequent 10-year learning process of engaging undergraduate students to facilitate small-group teaching and to design and develop the online learning environment Source Academy to conduct the course. CS1101S currently enrols around 800 students per year with three academic staff and around 110 student facilitators. Source Academy was conceived, designed, and implemented by students of the course and provides the glue for building a sustainable and scalable community of learners, educators, and budding software developers. Source Academy includes transpilers, virtual machines, type checkers and interpreters to run JavaScript and course-specific sublanguages of JavaScript and TypeScript in the browser and on LEGO Mindstorms robots. The talk features demo sessions of Source Academy and an analysis of the impact of the system and the course over the last four years. We give a preview of Python and Scheme support in Source Academy and would like to explore its potential for PLSE teaching and research beyond CS1101S with you.

Biodata Boyd:
Boyd Anderson is a Lecturer in the Department of Computer Science at the School of Computing at the National University of Singapore (NUS). He received his PhD from the NUS Graduate School for Integrative Sciences and Engineering in association with School of Computing in 2019. He received a Masters and Postgraduate Diploma of Science in Statistics and Operations Research, a Graduate Diploma of Science in Computer Science and a Bachelors of Science in Physics from Victoria University of Wellington. His research interests are in the fields of Embedded Systems, Body Sensor Networks, and the Internet of Things. His doctorate research focused on human gait measurement and analysis using Ultra Wideband sensor systems.

Biodata Martin:
The guiding motivation for Martin's work is the scalability of experiential learning. With his colleagues at the NUS School of Computing (SoC), he has scaled the experiential introductory course CS1101S from 48 students in 2012 to 750 students in 2022. He is also teaching the experiential course CS4215 Programming Language Implementation, and subscribes to SoC's project-based course CP3108 for experiential learning projects. The work on CS1101S culminated in the textbook Structure and Interpretation of Computer Programs, JavaScript Edition, by Harold Abelson and Gerald J. Sussman, adapted to JavaScript by Martin Henz and Tobias Wrigstad, with Julie Sussman, published by MIT Press in April 2022. CS1101S also motivated the development of the Source Academy, an immersive online experiential environment for learning programming used in CS1101S, at University of San Francisco, and at Uppsala University.