Welcome to CS32!

Considering taking 32? Read about students' past experiences.

You'll learn techniques for designing, building, and maintaining large, scalable, and reusable systems. We will cover advanced programming techniques using Java, Javascript, and React. Course assignments will familiarize students with software testing, relational databases, concurrency techniques such as threads, and software engineering tools like git, profilers, and debuggers. Students build projects of meaningful size and complexity, and reuse their efforts in ever larger projects. A major component of the course will be a group software project of your own design.

The course will meet Tuesdays and Thursdays synchronously over Zoom and Discord from 1:00-2:20pm at this Zoom link and this Discord Link (pinned on Piazza).

Pre-requisites are CS16, CS18, or CS19.

The first assignment this year is Boggle, and it's available early to help you prepare for 32. It will not be graded - it's intended as a template to help you understand what 32 projects are like.

Have questions about the course material? Ask them on Piazza.