Teaching in the Age of AI: Rethinking Assessment in Introductory Computer Science

In these early programming courses, assignments typically focus on foundational skills: writing loops, using conditionals, working with functions, and manipulating basic data structures. These problems are well-defined and relatively constrained, exactly the kind of tasks LLMs are very good at solving. We could now input a problem from an assignment and receive a working solution in seconds. It didn’t take long for students to realize they could paste an assignment prompt into an AI tool and receive a solution that not only worked, but often matched or exceeded what they could write themselves. This wasn’t just a case of potential plagiarism, it called into question what, exactly, we were assessing. If students could submit AI-generated code that passed all our test cases, did that mean they understood the concepts we were trying to teach?