Education as a Service: Containerization and Orchestration of CS50 IDE
CS50 is Harvard University's introductory course in computer science, freely available as OpenCourseWare, with hundreds of students on campus and more than one million registrants online. So that stud …
Talk Title | Education as a Service: Containerization and Orchestration of CS50 IDE |
Speakers | David J. Malan (Gordon McKay Professor of the Practice of Computer Science, Harvard University), Kareem Zidane (Software Engineer, Harvard University) |
Conference | KubeCon + CloudNativeCon North America |
Conf Tag | |
Location | San Diego, CA, USA |
Date | Nov 15-21, 2019 |
URL | Talk Page |
Slides | Talk Slides |
Video | |
CS50 is Harvard University’s introductory course in computer science, freely available as OpenCourseWare, with hundreds of students on campus and more than one million registrants online. So that students have a uniform environment with which to begin programming (without client-side technical difficulties in the way), the course provides CS50 IDE, a free, cloud-based solution.To minimize cost and avoid homegrown orchestration of VMs, the course transitioned to pods, one container per student. But the migration was not without challenges. How to provide users with ephemeral containers but persistent storage? How to proxy arbitrary ports to students' own web services? And, ultimately, how to provide students with the abstraction of their own machine, without k8s-specific implementation details clouding their own understanding thereof? In this talk, CS50’s own solutions thereto.