Steps Toward Open Source Education
Join our next Red Hat Research Days event on October 28th from 11AM to 12:30PM EDT (5PM CEST, 6PM IDT), which will be an exciting discussion on “Steps Toward Open Source Education.” Jonathan Appavoo, Computer Science Associate Professor at Boston University, will share his work to develop a hands-on live educational experience for teaching computer science in a real cloud environment that uses JupyterBook and containers powered by OpenShift. Prof. Appavoo, Prof. Orran Krieger, Director of the Cloud Computing Initiative at BU, and Hema Veeradhi, Red Hat Senior Software Engineer in the AICoE, will explore this new way of learning about computer systems. The event is open to all, and will support live questions and answers from learners who attend as well!
The MOC/ORCI and Red Hat Collaboratory @ BU offer a unique opportunity to take computer systems education, CS education, and perhaps education more broadly, to a new level of openness and accessibility. In this talk I will discuss a concrete step towards this vision through my efforts to prototype new material for an introduction to computers systems class. Since 2010 I have taught the required undergraduate computer systems class at BU (CAS CS 210: “Computer Systems”). This is the first class that introduces students to the fundamental underpinnings of open source software, that the world around them is built on; Linux, Bash, GCC, GDB, etc. However, this foundational introduction happens in an ad hoc manner, often tangentially when teaching binary representations of data and programs from a widely used “dead tree” textbook developed at CMU.
These students, and I suspect all CS students today, are being robbed of a transformative experience. We, old geezers, had the chance to “grow up” slowly exploring and learning the concepts and building blocks of UNIX from our first physical terminal sessions. As we explored, our understanding grew and our skills to probe deeper naturally evolved. Our ability to both comprehend and “do” became one and the same. Given the massive layers of software and CS topics that students are exposed to now, we are lucky if out of a course like CS210, they memorize the recipes of a few shell commands and can answer some assembly questions on an exam. Unfortunately, few if any get to glimpse the magic of computers systems and what one can do with a foundational understanding of them.
We, as educators, can and must do much better! Guided, self-exploration is key to truly understanding the world of UNIX and the details of how software and hardware interact and fit together. We now have the opportunity to provide such an experience in the cloud in a first-class and open way. Specifically, we can exploit technologies and trends in authoring online textbooks (JupyterBook) combined with the ability to containerize, complete and customized companion Linux stacks, all powered by OpenShift and served on demand from the MOC. This lets us create a rich, web browser accessible, educational experience that is “real” and does not compromise conceptual or technical soundness nor limit exploration.
In this talk I will discuss our experiences, demo some of what has been prototyped so far, next steps and how this effort fits into the larger vision.
Establish pedagogical methodology and infrastructure for open computer science education. Produce self-contained education that provides both conceptual and practical training, relying solely on open source publicly available materials, open cloud technologies, and MOC services. Pave the way to globally accessible, high quality CS educational materials and infrastructure that can be copied, built on and sustained.
Jonathan Appavoo, Associate Professor at Boston University in the department of Computer Science.
Orran Krieger, Professor at Boston University, Director of the Cloud Computing Initiative at BU
Hema Veeradhi, Red Hat Senior Software Engineer in the AICoE