Is registration limited? We may need to limit registration, but we expect to be able to accommodate everyone who preregisters.

I’m a Wellesley (or Harvard) student. Can I register for the class? Yes! You’re very welcome. A month ago, we had been told by the department that cross registration was being limited and we encouraged you to add your name to a waiting list. The policy has now changed, and cross registrations will not be limited.

Can I attend as a listener? Yes, listeners are welcome, and all class material will be available to listeners. You are also welcome to do the assignments and attend office hours. We are not able, however, to provide feedback on your work and you will not be able to join a final project team.

I can’t attend both weekly lectures. Can I still take the class? No. The main goal of the class is to teach skills and ideas that go beyond full-stack coding to larger questions of design and strategy. Many of the lecture sessions are focused on design ideas that we have developed and honed over several years of teaching the class. In our experience, students who don’t attend in person and hope to catch up afterwards are unable to do so.

I’m taking another class that overlaps with this class. Can I leave early or come late? No. We appreciate how frustrating it can be when you want to take two classes that get scheduled at overlapping times, but it’s a bad idea to register for classes that overlap, because it means you cannot be fully invested in both. We suspect that overscheduling is one of the many causes of needless stress for students. In most universities, the registration system doesn’t even permit registering for overlapping classes. We wish MIT’s system worked this way!

Will video recordings of lectures be available online? No. Students are expected to attend in person. We may be able to provide recordings to individual students who missed particular lectures due to extenuating circumstances.

Do I really need the prereqs? See the class guide for more information about the prereqs. We don’t strictly enforce them, but in our experience students who have only some basic programming experience and are not adept with JavaScript will struggle to keep up, and will find learning the technology stack overwhelming. The class builds on program structuring fundamentals such as data abstraction (immutability, representation independence and representation invariants) and declarative specification (pre/post conditions) taught in 6.102. Students not familiar with these notions find it much harder to grasp the design ideas of the class.

Is the class a CIM? No, it isn’t. The amount of writing required in the class is minimal.

How will this year’s class differ from last year’s? There will be some major changes this year:

  • Units down from 18 to 15, to reflect reduced load
  • Grading that emphasizes mastery over volume
  • More emphasis on design creativity (and less on ethics)
  • Not just permission but encouragement to use LLMs
  • A framework for exploiting LLMs in code generation

What will remain unchanged? Key features of the class will be unchanged:

  • A focus on design rather than just coding
  • Coverage of technologies for full-stack web dev
  • Team project on a problem of your choice