Stanford’s CS146S repository brings together eight weeks of exercises for learning to program with AI, from prompts to testing and code review.
If you already code and are looking for a structured way to practice with AI, here you have concrete tasks: expand applications, check their behavior, and explain your changes.
What Does CS146S Teach About Software Development with AI?
CS146S, The Modern Software Developer, focuses on developing software with AI tools and agents.
The public repository contains exercises and starter code. Its README identifies the Fall 2025 course; the repository description also mentions 2026. This note walks through the available exercises, without assuming they constitute a complete new edition.
The walkthrough includes:
- Prompts and local models: practice techniques like tool calling and retrieval-augmented generation (RAG) using Ollama.
- AI-assisted development: use Cursor to expand a small application, add tests, refactor code, and generate documentation.
- Connecting agents with tools: build an MCP server that allows you to use an external API.
- Development automation: create workflows with Claude Code and Warp.
- Security and review: fix static analysis findings and compare your review with AI-generated comments.
- Building applications: implement the same functional web application with three different technology combinations.
You can check the requirements directly in the exercises repository.
Do You Need Prior Experience to Follow the Course?
Yes. The course website requires programming experience equivalent to Stanford’s CS111/CS161 courses and recommends additional AI training.
To study on your own, you should be prepared to read existing code, work in a terminal, install dependencies, and investigate why tests fail. Several exercises use applications with a Python backend and a database.
Those in the early stages of their careers may find useful practice, but the material does not substitute for programming fundamentals. If you still struggle to run and modify an existing project, set aside time to learn it alongside the AI exercises.
Why Use These Exercises to Learn Programming with AI?
Because the tasks ask you to check and explain the work done with AI help.
In week two, you add a function based on an LLM, write unit tests, and improve the application that contains it. In week six, you fix at least three security findings, explain how you resolved them, and verify that the application still works and its tests pass.
This way you practice a useful cycle: request a change, inspect the result, test it, and understand what happened.
The automation exercises extend that practice to repeatable processes. If you’re not yet familiar with specialized agents, our introduction to Claude Code sub-agents provides related context.
Can You Do the Exercises on Your Own?
The public materials offer a starting point for independent study, though accessing the repository does not imply receiving university evaluation, a certificate, or access to all commercial tools used.
Some exercises mention student offers and credits distributed to the class. Do not assume those benefits are available outside the course. Access to tools and requirements for local models also influence what you can run.
Start by reading a complete exercise and reviewing its dependencies. Complete a manageable task, keep notes on your prompts and corrections, and make sure you can explain the final code.
As of September 20, 2026, this assessment is based on published materials; we have not executed the exercises. Consult current documentation from each provider before following outdated installation instructions.