Location: RJR Forum
CS50 is Harvard University's introductory course in computer science, freely available as OpenCourseWare, with hundreds of students on campus each term 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.