January 26, 2020•blog
I have run two courses using Diderot: the Fall 2019 run of Practical Data Science, and the Spring 2020 edition of Graduate AI, for Carnegie Mellon University.
To help manage large courses using this platform, I developed a suite of automated scripts to automate common building and distribution tasks. This set of scripts would later be superseded by a CI-based solution suitable for large-sized courses, but they remain a great solution for small- and medium-sized courses.
If you need to run a course on Diderot, you can get these scripts on GitHub.
These course management scripts use IPython notebooks as the preferred format for course hand-outs, hand-ins, and notes. The format is flexible, easily parsed, supports image embedding, and allows Latex Math: great features for teaching computer science.
For handouts, you just need to write a single handout including prose, empty function stubs, student-side tests, and reference implementations. From that, we:
Notes are similarly automatically converted to Diderot chapters and Markdown output.