Learning Objectives | Course Structure | Recitation + Tutorial Schedule | Staff Contact | Grade Breakdown + Late Policy | Grade Components | Collaboration Policy

6.033 Learning Objectives

After 6.033, the students will be able to design their own distributed systems to solve real-world problems. The ability to design one's own distributed system includes an ability to argue for one's design choices.

This primary objective is supported by a few others:

Because 6.033 is a CI-M class, students will also learn to communicate in forms that are common in the field of computer systems. This includes written design reports, oral presentations, and peer review.

The communication instruction also supports the primary learning objective of designing systems. In the real world, we design systems in teams, and communication of many forms (written, oral, etc.) is part of that process.

Prerequisites: 6.004; 6.005 or 6.009
Units: 5-1-6
Requirements satisfied: CI-M for Course 6-1, 6-2, 6-3, 6-P, and 18-C

Textbook: 6.033 uses Saltzer and Kaashoek's
Principles of Computer System Design: An Introduction (Morgan Kaufmann 2009). The text supplements the lectures and recitations; it should be your first resource when you are confused by a lecture topic, or want more information.

If you notice errors of any kind in the 6.033 text, from minor typos to major blunders, please report them by e-mail to saltzer@mit.edu and kaashoek@mit.edu.

You can find PDFs with corrections to the printed and online textbook here. A more up to date version of the Part II errata is here.

Course Structure

6.033 has three components: lectures, recitations, and tutorials. We expect you to attend all three, as they each serve a different purpose.

Lectures

Lectures are held on Mondays and Wednesdays from 2:00pm-3:00pm in 26-100. The lectures are designed to teach students the technical details necessary to design their own systems and to put those details in larger contexts: both the contexts of a specific area of systems as well as systems in general.

This type of material appears in lectures because that's what lectures are good at: giving a higher-level context for the details of the class.

Recitations

Recitations are held on Tuesdays and Thursdays (schedule below). For the first recitation, attend whichever one you want. After that, you will be assigned a permanent section.

Recitations are designed to give students a chance to practice their system-analysis and oral communication skills. Each recitation revolves around a particular paper in systems. Through reading these papers, students get a better sense of how communication in the field is done. Recitations are discussion-based; students get practice analyzing, critiquing, and communicating about systems.

Writing Tutorials

Writing tutorials are held on Fridays (schedule below). All tutorials occur at 1:00pm or 2:00pm; we will assign you timeslot during the first week of classes.

Most of these tutorials will teach the communication theory and practices of this course, and assist you in preparing for the assignments. You'll become fluent in a variety of communication genres, develop strategies and skills needed to present technical concepts to different audiences, learn how to use writing to develop and deepen your technical understanding—and get specific, directed instruction on writing and presenting your 6.033 assignments. A handful of the tutorials will be dedicated to discussing the design project.

Recitation + Tutorial Schedule

All recitation sections meet on Tuesdays and Thursdays at the specified time. All tutorials meet on Fridays, at either 1pm or 2pm. Your section (and tutorial time) will be assigned during the first week of class.

Recitations Tutorials
# Time Location Instructor Instructor Location TA
1 10am 34-302 Mark Day Amy Carleton 36-156 Lilika Markatou
2 11am 34-302 Mark Day Amy Carleton 36-156 Lilika Markatou
3 10am 26-168 Muriel Médard Janis Melvold 3-442 Rachel Lathe
4 11am 26-168 Muriel Médard Janis Melvold 3-442 Rachel Lathe
5 10am 34-304 Karen Sollins Thalia Rubio, Rebecca Thorndike-Breeze 66-168 Gaby Rivera
6 11am 34-304 Karen Sollins Thalia Rubio, Rebecca Thorndike-Breeze 66-168 Gaby Rivera
7 12pm 32-144 Howard Shrobe Juergen Schoenstein 5-233 Lynda Tang
8 1pm 36-155 Howard Shrobe Juergen Schoenstein 5-233 Lynda Tang
9 12pm 34-304 Sam Madden Linda Sutliff 24-121 Michael Shum
10 1pm 34-304 Sam Madden Linda Sutliff 24-121 Michael Shum
11 1pm 34-302 Mark Day Robert Calton 1-379 Amanda Liu
12 2pm 34-302 Mark Day Robert Calton 1-379 Amanda Liu
13 1pm 36-372 Peter Szolovits Nora Jackson, Karen Pepper 36-372 Xavier Mwangi
14 2pm 36-372 Peter Szolovits Nora Jackson, Karen Pepper 36-372 Xavier Mwangi
15 1pm 38-166 Tim Kraska Michael Schandorf, Michael Trice 34-304 Katie Sedlar
16 2pm 38-166 Tim Kraska Michael Schandorf, Michael Trice 34-304 Katie Sedlar
17 1pm 35-310 Adam Belay Jared Berezin, Jessie Stickgold-Sarah 34-301 Zach Miranda
18 2pm 35-310 Adam Belay Jared Berezin, Jessie Stickgold-Sarah 34-301 Zach Miranda

Staff

To contact the course staff as a whole, please use Piazza unless you need to email a staff member individually. You can post a private question on Piazza if you do not want your communication to be visible to the other students in the class.
Role Name Email Office
Lectures Katrina LaCurts 38-587
Recitations Adam Belay 32-G996
Mark Day
Tim Kraska
Sam Madden 32-G938
Muriel Médard 36-512
Howard Shrobe 32-225
Karen Sollins 32-G818
Peter Szolovits 32-254
Tutorials Jared Berezin E18-240F
Robert Calton E18-228H
Amy Carleton E18-228Q
Nora Jackson E18-228Q
Janis Melvold 14N-322
Karen Pepper 14N-212
Thalia Rubio E18-233F
Michael Schandorf E18-228K
Juergen Schoenstein E18-240A
Jessie Stickgold-Sarah E18-240D
Linda Sutliff E18-228D
Rebecca Thorndike-Breeze E18-233K
Michael Trice E18-240D
TAs
Jing Fan
Rachel Lathe
Amanda Liu
Lilika Markatou
Zach Miranda
Xavier Mwangi
Gaby Rivera
Katie Sedlar
Michael Shum
Lynda Tang

Grading

6.033 consists of three components: technical material, communication/system design and analysis, and participation. Each of these components comprises roughly one third of your grade, according to the following breakdown:

35%:Technical Material
30% for Quizzes (two @ 15% each)
5% for Hands-ons
40%:Communication + System design and analysis
10% for DP preliminary report + DP presentation
20% for DP report
4% for the DP peer review
6% for critiques (2%, 4%)
25%:Participation
20% for recitation participation
5% for communication participation

You must complete all design project assignments in order to pass 6.033. If you do not, you will automatically receive an F.

Late Policy

You must hand in assignments when they are due, and you must attend quizzes at the scheduled times. If you feel you have a compelling reason for not handing in an assignment on time, or for not attending a quiz, please talk to Dr. LaCurts in advance; with support from S3 we will make exceptions.

The only exception to this late policy is design-project materials. For those, the late policy will be explicitly posted on each assignment.

If you miss an assignment deadline, you should still hand in the assignment; we'll give you feedback even though we won't give you credit for your final grade. Furthermore, doing assignments is the best way to prepare for exams and design project. Unless otherwise specified, assignments are due at 5:00pm on their assigned due-date (hands-ons are due at 11:59pm).

Grade Components

Each assignment supports the objectives of 6.033 in various ways.

Technical Material

Quizzes: One quiz is held during the term. A second quiz will be scheduled during finals week. Each quiz will focus on half of the class' material, but keep in mind that later topics in 6.033 build heavily upon the earlier topics. The quizzes will test material from lectures, recitations, and the assigned reading, and let us test whether students have mastered the technical material.

Hands-ons: During most weeks, you will be expected to complete a hands-on experiment that requires a computer, usually an Athena workstation, and sometimes the Internet. These reinforce some of the abstract concepts from the lectures or papers that week, and let you find out how things really work.

Communication + System design and analysis

The 6.033 staff have worked with the MIT Writing, Rhetoric, and Professional Communication (WRAP) program for more than 10 years to design 6.033 writing and speaking assignments. We have chosen assignments that are similar to the kinds of writing you will do in the engineering workplace: preliminary reports, final reports, and presentations. Communication assignments are designed to help you conceptualize and develop the design project.

Design Project

The primary assignment in 6.033 is the design project (DP). This project is where the students get to design their own system, which is the primary objective of this course.

The DP requires you to develop a detailed system design to solve a real-world problem. This project will extend over most of the semester, and will be done in teams of three students, all of whom attend the same writing tutorial (with exceptions only for extenuating circumstances). Real-world systems are not built individually; it's always a team effort. Part of the DP is to learn to work productively and effectively in this setting. We will give you tools for doing so in the writing tutorials.

The DP consists of multiple deliverables: a preliminary report, oral presentation, final report, and peer review. The Design Project page gives more detail about the DP deliverables.

System Critiques

One of the goals of 6.033 is for students to be able to analyze and critique technical systems. We will assign multiple system critiques during the semester.

These critiques will be graded by your TAs and/or Communication Instructors, and assigned a letter grade (we will specify more details about grading in each of the assignments). The expectations for each individual critique will be detailed in the tutorials. As your skills at analyzing and reading technical papers improve throughout the semester, we will expect your critiques to reflect that.

Participation

Recitation Participation

Our recitations are discussion-based, and we expect you to be engaged and participate. Participating in a recitation means:

We will assign the participation grade in two parts: one for the first half of the semester, one for the second half of the semester. We will also give you preliminary grades for each of these (one about a quarter into the semester, one about three quarters into the semester), so that you know where you stand and have time to improve. This document explains in more detail how your participation grade is determined.

Just like we expect you to be engaged in recitation, we also expect you to be engaged with the class as a whole, including the syllabus. To that end, once you've read this, please send Dr. LaCurts your favorite .gif (a link to it is fine).

Communication Participation

A portion of your participation grade will also be based on your participation in writing tutorials and on your understanding of communication concepts and skills, as demonstrated by your work on the design project and evaluated by your communication instructor.

Note that over a third of your grade comes from written assignments: we expect you to take writing seriously in this class.

Collaboration

You may not collaborate on quizzes. On hands-ons, it's okay to discuss ideas with your classmates, but you should not be collaborating on the actual answers. Take the UNIX hands-on for example: it's okay to talk to your classmates about what pipes are, it's not okay to work together to come up with a command that gives a long listing of the smallest give files in the /etc directory whose name contains the string ".conf", sorted by increasing file size (i.e., the solution to one of the first questions).

On all writing assignments you are welcome to discuss ideas with others, but your writing should be your own and you should acknowledge all contributions of ideas by others, whether from classmates or from papers you have read.