CS Assistant Professor and NSF Career award-winner, Adrian Sampson, has made his "Advanced Compilers" into an open-source, self-guided online course. CS 6120 is a Ph.D.-level course on programming language implementation. "It covers universal compilers topics like intermediate representations, data flow, and 'classic' optimizations as well as more research-flavored topics such as parallelization, just-in-time compilation, and garbage collection. The work consists of reading papers and open-source hacking tasks, which use LLVM and an educational IR invented just for this class."
Reflecting the shift from in-person instruction to online teaching—and this latest move to open-source, open-access—Sampson says it "has been a fun experiment in attempting to find a pandemic silver lining. Teaching normally would, of course, make me happier, but it’s a consolation prize that I can easily make the same curriculum available to the whole world" compared with "the twenty-or-so people who would take this course" in pre-pandemic conditions.
"This course was a good fit for letting out into the world," Sampon notes, "because I designed it to be 'open-source' from the beginning. That is, I have solutions to much of the homework already on GitHub, and I encourage students to put their stuff online, publicly available, as well. So cheating would be extremely easy—or, as I prefer to think of it, it’s impossible to cheat. I think this forces the work to feel more 'real' and less like an academic exercise." Sampson's transformation of the course—and his observations on the results—unsettle our notion of what "taking a course for real" means. While students used to work "in real life," there may have been a danger that lessons, in fact, felt like "academic exercises." Now liberated to include the whole world, the virtual classroom has achieved a special quality of urgency and widespread implementaiton.
And the numbers suggest an impressive growth that is likely only to multiply: "I’m shocked," Sampson observes, "that the intro lesson video has 2,397 views. That’s not very famous by YouTube standards, but it is by the standard of other classes I’ve taught!" With one-hundred fold growth in such a short time, one wonders not just how many students will eventually come to "Advanced Compilers," but how much good will come from their ability to freely access Sampson's teaching.
Read more and take the course. See also coverage by I Programmer.