Announcements
Remember to check this regularly!
- Remember Monday Jan 17 is MLK day; we have adjusted our schedule accordingly.
Administrative Information
Professor
Fabián E. Bustamante2145 Sheridan Road, Room 345
+1 847 491-2745
fabianb@cs.northwestern.edu
Office Hours: TBD
Course Description
This seminar will review cool ideas and ongoing projects that are pushing distributed systems into new and challenging domains. The class will structured as a traditional seminar with readings, class discussion and a quarter-long research project.
Location and Time
Class meetings: Mondays and Wednesdays 3:30-4:50PM (LG68)
In compliance with Section 504 of the 1973 Rehabilitation Act and the Americans with Disabilities Act, Northwestern University is committed to providing equal access to all programming. Students with disabilities seeking accommodations are encouraged to contact the office of Services for Students with Disabilities (SSD) at +1 847 467-5530 or ssd@northwestern.edu. SSD is located in the basement of Scott Hall. Additionally, I am available to discuss disability-related needs during office hours or by appointment.
Course Prerequisites
- Please contact me if you would like to take the course.
Communication Channels
We will use the course web site (http://www.cs.northwestern.edu/~fabianb/classes/eecs-395-s08) to post announcements related to the course. You should check this regularly for schedule changes, clarifications and corrections to assignments, and other course-related announcements.
There is also a newsgroup, eecs.495.dsce, hosted at news.cs.northwestern.edu. This newsgroup is intended to foster communication among you, the students. You'll find that someone else in the class will have thought of the same problem that you have and will perhaps have some valuable insight that will prove helpful. I will be monitoring the discussion threads and will step in with guidance when appropriate.
Materials
A set of research papers I will make available (see the schedule page for a full list).
Course Organization
The course is organized as a series of discussion sessions and a single term-long project.
Reading Papers
When reading papers it is normally useful to write down a summary of about a page. Your summary should include at least:
- Paper title and its author(s).
- Brief one-line summary.
- A paragraph of the most important ideas: perhaps a combination of their motivations, observations, interesting parts of the design, or clever parts of their implementation.
- A paragraph of the largest flaws; maybe an experiment was poorly designed or the main idea had a narrow scope or applicability. Being able to assess weaknesses as well as strengths is an important skill for this course and beyond.
- A last paragraph where you state the relevance of the ideas today, potential future research suggested by the article, etc.
You may find the following brochure useful: Efficient reading of papers in Science and Technology by Michael J. Hanson, 1990, revised 2000 Dylan McNamee.
You must submit you summaries before 10AM on the day the paper
is scheduled for discussion. Please use the following subject line
with your submission: "DSCE Summary
Project
There will be one single project on which you will work throughout the quarter - this is a critical component of the course. Your goal is to design, construct and evaluate an interesting distributed system - the crazier the better.
Projects must be written up in a term paper (due during finals week) and teams will present their results at the end of the course in a systems class mini-conference. Projects ideas will be suggested by the instructor, but you are strongly encouraged to come up with your own ideas. Based on the topic of your project, you will be assigned a project leader to help you through the quarter (you will meet weekly with them).
This is the schedule of meetings and deliverables (this is
mainly to ensure steady progress):
- Form a group. January 3-7.
- Project meeting with instructor. January 10-14.
- Project initial presentation (you should read the CSP project startup or look at the Questions
that any project proposal should answer -- the Heilmeier
"Cathechism"). The presentation should be 4 slides long,
including (1) Project name and team members, (2) What is the
research contributions of the project? List of new/interesting
concepts to be investigated, (3) Why do we care if you are
successful?, and (4) Project milestones and schedule for the
rest of the quarter.
January 17 & 19 - Midterm presentation and report. The presentation should be
4 slides long, including (1) Project name and team members, (2)
Revised statement of project goals and list of new/interesting
concepts to be investigated, (3) List of issues addressed and
pending, and (4) Updated project milestones, highlighting
accomplishments to
date, and schedule for the rest of the quarter.
February 7 & 9 - Project meeting with instructor. February 21-25.
- Final presentation. Scheduled final day.
- Final report due. During finals week.
The final report has to conform to the format used by the Workshop on Hot Topics in Networks or the Workshop on Hot Topics in Operating Systems. Reports shuold be no longer than 6 pages (you can use appendices or a webpage to document details). The following structure is suggested:
- Abstract: What did you do, why is important and what are your high-level results?
- Problem statement: What is the problem you tried to solve?
- Prior work: How others have addressed the problem before and why that was not enough?
- Research approach: What was your approach to solving the problem? What did you design, built? What was your experimental methodology?
- Results: What were your results? How did you evaluate your work? What were your figures of merit?
- Lessons learned and future work: If you knew what you know now, what would you do differently? What questions are left for future work?
- Summary and conclusions.
Grading
I use a criterion-referenced method to assign your grade; in other words, your grade will be based on how well you do relative to predetermined performance levels, instead of in comparison with the rest of the class. Thus, if a test has 100 possible points, anyone with a score of 90 or greater will get an A, those with scores of 80 or greater will get a B, those with scores of 70 or greater will get a C, and so on. Notice that this means that if everyone works hard and gets >90, everyone gets an A.
Total scores (between 0 and 100) will be determined, roughly, as follows:
- Class participation 15%
- Summaries 15% (90% required)
- Paper presentation and discussion leading 20%
- Project 50%, made up of ...
- Proposal: 10%
- Midterm report and presentation: 15%
- Final report and presentation: 25%
Topics
- The network underneath
- A view from the edge
- In the wild
- Directing traffic in the dark
- Strange places
- It's all green
- Coordination and debugging
- Pains of an interconnected world