This website is still under construction

Welcome to 6.104 Software Design!

In this class, you’ll go beyond coding and learn how to design and build software that is elegant, powerful and flexible. In addition to classic software design and UX techniques, you’ll learn concept design, a new way to structure software functionality more effectively. You’ll also learn how to use LLMs in design and code, and how to incorporate AI agents into applications.

This website will host all the important material, including the class schedule, assignments, lecture and recitation notes, etc. Make sure to read the class guide which explains the purpose and structure of the class and its expectations, and check out the FAQ. The resource page will contains helpful links to technology resources.

Announcements