CLOC-502: Python for Everybody with AI
Time limit: 360 days
Instructor: Charles R Severance
Sorry! The enrollment period is currently closed. Please check back soon.
Full course description
During the first portion of the course, students learn the foundations of programming without using artificial intelligence to write their programs. Chapters 1–10 of Python for Everybody introduce the fundamental ideas that programmers need in order to read, understand, write, test, and debug Python code. Students learn variables, expressions, conditional execution, functions, loops, strings, files, lists, dictionaries, and tuples. The goal of this portion of the course is to develop enough programming fluency that students can understand what Python programs are doing rather than simply asking an AI system to produce code for them.
Beginning with Chapter 11, artificial intelligence becomes an explicit part of the programming environment. Students continue learning new technical material from Chapters 11–16 while also learning how to work effectively with AI when solving programming problems. AI is used as a programming partner: to explore unfamiliar libraries, explain code, suggest approaches, diagnose errors, generate portions of programs, compare alternative solutions, and improve existing code.
The second half of the course therefore serves two purposes at the same time. Students learn increasingly powerful Python techniques for working with real-world data, networks, web services, objects, databases, and visualization, while repeatedly revisiting the fundamental programming concepts from Chapters 1–10. Students are expected to read, evaluate, test, modify, and explain AI-generated code rather than simply accept it.
The goal of the course is not to teach students how to avoid programming by using AI. The goal is to teach students enough programming that they can use AI effectively, critically, and confidently as part of modern software development.

