Courses with Videos
 

See my list of course pages for all courses, but this page is a guide to the ones that I think are potentially the most useful — either for those pursuing self-study or for instructors who are looking for material or ideas.

CS 3520Programming Languages using Shplait (Fall 2024)

An interpreters-based exploration of programming-language concepts and functional programming, based on Programming Languages: Application and Interpretation (second edition) by Krishnamurthi and generally in the style of Essentials of Programming Languages by Friedman, Wand, and Haynes.

CS 3520Programming Languages using Plait (Fall 2020)

Same course, but using a language that looks more like Scheme. An even older version of the course (Fall 2017) uses plai-typed.

CS 4400Computer Systems (Fall 2018)

Systems concepts and practice following Computer Systems: A Programmer’s Perspective (third edition) by Bryant and O’Hallaron.

CS 6014MSD Networking & Security (Spring 2025)

Networking, cryptography, and security, mostly based on Computer Networking: A Top-Down Approach (eighth edition) by Kurose and Ross.

CS 6015MSD Software Engineering (Spring 2022)

A C++-based course that combines practical software-engieering techniques with some programming-language content.