CS 124 All-Staff Meeting

CS 124 All-Staff Meeting

AI, Assignments, and the Path Forward

December 7, 2025

Link to These Slides

geoffreychallen.com/talks/2025-12-07

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

  1. Instructor comes up with idea
  2. Instructor translates idea to specification
  3. Student translates specification to code
  4. 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?

  1. Won't work — some will still use it
  2. 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.