CS 124 All-Staff Meeting
AI, Assignments, and the Path Forward
December 7, 2025
Thank You
To all of the CS 124 staff for your hard work this semester.
This has been a challenging time, and I appreciate everything you do.
An Anxious Time
- This will affect our profession
- Harder to get jobs
- Skills we learned are of lower value
It's important to confront this together.
Why We're Here
- Staff communication and collaboration
- Discuss AI changes this semester
- Talk about plans for spring
Traditional CS Assignments
The Standard Model
- Instructor comes up with idea
- Instructor translates idea to specification
- Student translates specification to code
- Code is evaluated against specification
The Central Role of Specification
- Interface between staff and students
- Must be precise for autograding
- Mismatch = frustration
Example: MP3 button event handler issue
How AI Changed Everything
Traditional assignments tested one thing:
Specification → Code translation
The Old Anti-Cheating Approach
- Rotate assignments every semester
- Students can't find old solutions
- No tool existed to translate spec → code
But Now...
We've built that tool. It's called a coding agent.
Claude completed last year's MP essentially unaided in "vibe code mode"
The Implication
If the agent can do the entire assignment...
...the student is doing little to nothing.
This Semester's Approach
Why Not Just Ban AI?
- Won't work — some will still use it
- Wrong approach — students should learn AI tools
Hidden Test Suites
- Removed full test suites to make specs less complete
- I've opposed hidden tests — they create adversarial relationship
- In real development, you always have access to tests
Problems with Hidden Tests
- Students "hill climb" with autograder
- Submit → get feedback → give to Claude → repeat
- Autograder strain: 300s for MP vs 200ms for homework
Other Attempts
- Video instructions instead of written specs
- Hope: students translate video to text for Claude
- MP3 test suite mistake made evaluation difficult
Assessment: A Failed Experiment
- Students can complete MP
- Tutoring wait times reasonable
- MP is easier than before
- But: students aren't learning much
The Impossible Tension
- Accurate spec = AI can do it all
- Vague spec = student frustration
This is almost impossible to resolve.
Spring: "My Project"
A New Model
| AI handles: |
Specification → Code |
| Student handles: |
Idea → Specification |
Name Evolution
Machine Problems
↓
Machine Project
↓
My Project
(Still "MP"!)
First Half: Idea Development
- Brainstorming in discussion sections
- Writing about the idea
- App design & screen mockups
Second Half: Build with Claude
- Students use Claude to build their app
- Must be an Android app (Java/Kotlin)
- Every student has their own unique project
Required Changes
- Tuesday discussions: mandatory attendance
- Need tutors for discussion sections
- MP lessons: more general-purpose content
Keeping Classical Programming
- CBTF quizzes remain
- May increase: 70% → 80%
- Possible: 80% CBTF, 10% HW, 10% My Project
Classical Programming as Mental Training
- Clear thinking
- Accurate expression
- Reading comprehension
Like a crossword puzzle for the mind.
The Future
Coding agents may eventually bypass source code entirely.
(Compilers generate assembly no one reads...)
Why I'm Excited
- Students building their own apps is exciting
- AI enables beginners to build real apps
- Personal investment → deeper learning
- Will take a few semesters to refine
Call for Feedback
- Staff feedback is especially valuable
- We won't always agree — that's okay
- It's safe to disagree with me
Questions?
What we covered:
- How AI coding agents broke traditional assignments
- This semester's hidden test experiment (a failed experiment)
- Spring plan: "My Project" — students build their own apps
- Keeping classical programming for mental training
Let's discuss.