Automating teaching about automation in Python
summary
Course automates grading and feedback for 120 students using JupyterLab notebooks, one git branch per student, and a separate testing service that redacts failures; tests run with pytest and produce pytest HTML reports that a custom GUI links to notebook cells. The tooling grows to 45 Python files (~6–7k LOC) plus ~4k LOC of tests, supports parallel reruns, markdown checklists for manual grading, and mostly works despite cell-tag bugs and a storage-migration data loss.
AI-written summary · about
chapters (16)
- 0:00Introduction to talk
- 1:10Speaker’s background
- 2:58Course setup and goals
- 5:47Interactive learning approach
- 9:18Why automate teaching
- 11:47Automation tools and scripts
- 14:20Student feedback results
- 16:28Lessons learned
- 18:34Challenges and issues
- 21:47Unexpected student mistakes
- 23:12Automation limits and decisions
- 23:53Student data automation
- 26:02Grading tool demonstration
- 27:51Project grading workflow
- 29:39Final grading process
- 30:44Future improvements
related talks
26mFlipping the classroom with Jupyter and Github
26mGitHub Classroom: A Simple Tool for Teaching Python
29mAutomagically marking Python course work and assessments in seconds!
30mAt the Turn of the Tide – Teaching Python in Real-Time at Scale
30mAutomating Code Quality
30mSharing computational course material at larger scale: a French multi-tenant attempt
31mOrganizing and Maintaining Your Code-Scape with Python
23mAs a Teacher. I have no Time to learn Programming - Streamline Assignment Marking with Python
