| 4/26 | 35. Final Thoughts | Slides |
| 4/24 | 34. Compilers (COMP520) Preview | |
| 4/22 | 33. Compilation | Slides |
| 4/17 | 32. Big Picture | Slides |
| 4/15 | 31. Reviewing Midterm Question 7 | Slides |
| 4/10 | 30. Parser Generators | Slides |
| 4/3 | 29. Midterm Review | Slides |
| 4/1 | 28. make and Makefiles | Slides |
| 3/27 | 27. Operator Overloading | Slides |
| 3/25 | 26. Exit Statuses | Slides |
| 3/22 | 25. xargs, wget, and Using Regular Expressions to Scrape | Slides |
| 3/20 | 24. sed and Regular Expression Capturing Groups | Slides |
| 3/18 | 23. Constructing an NFA from a Regular Expressions | Slides |
| 3/8 | 22. Esoteric Languages | |
| 3/6 | 21. Modeling NFAs | Slides |
| 3/4 | 20. Regular Expressions and Automata | Slides |
| 3/1 | 19. Code Review and Pair Programming | Slides |
| 2/27 | 18. File Input Tutorial | Slides |
| 2/25 | 17. Merging branches in git | Slides |
| 2/18 | 16. Shell Redirection and Pipelines & Midterm Overview | Slides |
| 2/15 | 15. Fundamentals of git | Slides |
| 2/13 | 14. Review Game - Tracing Practice | Slides |
| 2/11 | 13. Leftmost Grammar Derivations and Expr Trees | Slides |
| 2/8 | 12. Recursive descent parsing 101 | Slides |
| 2/6 | 11. Recursive walks and code gen 101 with DOT | Slides |
| 2/4 | 10. Dynamic Memory and Recursive Types in Rust | Slides |
| 2/1 | 9. C's Native Arrays and Dynamic, "Heap" Memory | Slides |
| 1/30 | 8. Lifetimes and Mutability | Slides |
| 1/28 | 7. Test-Driven Development | Slides |
| 1/25 | 6. Extended Regular Expression Operators and vim Commands | Slides |
| 1/23 | 5. Lexical Analysis: Regular Expressions and Tokenization | Slides |
| 1/18 | 4. Stack Values and References | Slides |
| 1/16 | 3. Command-Line Interface (CLI) Shell 101 | Slides |
| 1/14 | 2. On null and Iteration with Option<T>, if-let, & while-let | Slides |
| 1/11 | 1. vim Grammar 101 | Slides |
| 1/9 | 0. Welcome | Slides |