Distributed Systems: 601.417 / 600.617

Home
Class Information
Lectures
Exercises
Piazza
Reference Material



News
Announcement will be made on Piazza. Please join Piazza.

Class Information
Instructor
Teaching Assistant

The course teaches how to design and implement efficient tools, protocols and systems in a distributed environment. The course gives some hands-on experience as well as some theoretical background. The programming assignments and the project in the course should be done in C / C++. User interface parts of programs can be built in java if that is desired. The assignments will be evaluated on the Ugrad1-Ugrad20 cluster in the undergrad lab.

For more information about the course please contact the instructor.
Prerequisites:
  • Intermediate Programming Course (601.220)
  • Data Structures ( 601.226 )
Class Schedule
  • Tuesday 3:00pm - 4:15pm, Hodson 316
  • Thursday 3:00pm - 4:15pm, Hodson 316
Office Hours
  • Yair Amir - Tuesday 5:00pm - 6:00pm, Thursday 1:00pm - 2:00pm
  • Sahiti Bommareddy - Monday 11:00am - 12:00pm
  • In addition to Piazza, you can e-mail us any time or drop by office or lab (Malone 209 or 207).
Academic Integrity

Academic honesty and ethical behavior are required in this course, as they are in all courses at Johns Hopkins University. This course will strictly enforce the Computer Science Department Academic Integrity policy, which can be found at the department's web page.

Lectures
For each lecture we will have a link to the lecture slides, which will include links to recommended reference material for that lecture's topic where applicable.

Fall 2019 Lectures:

Old Fall 2016 Lectures:

Older Fall 2014 Lecture:

Older but worthwhile lectures no longer in the course:

Reference material for the class, including useful books, web sites, articles, etc are available.

Tutorials
All the source code presented during tutorials is also available on the ugrad machines in the directory ~cs417/tutorials/
Exercises & Homeworks

The course includes the following assignments:

  • Two theoretically-based homework assignments.
  • 3 practical programming exercises.
  • A final project.
    Department of Computer Science The Johns Hopkins University
    Questions or comments to:
    webmaster (at) dsn.jhu.edu
    TEL: (410) 516-5562
    FAX: (410) 516-6134
    Distributed Systems and Networks Lab
    Computer Science Department
    Johns Hopkins University
    3400 N. Charles Street Baltimore, MD 21218-2686