CS32

Intro to Software Engineering
Brown University

Welcome to CS32!

You'll learn techniques for designing, building, and maintaining large, scalable, and reusable systems. We will cover advanced programming techniques using Java and Javascript. 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 in Salomon Center 001 from 1:00-2:20pm.

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, but it will be extended, lab after lab, into an increasingly large project. It's also intended as a template to help you understand what 32 projects are like.

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