Syllabus | ‣ | ‣ | Contacts | 🖼 Canvas |
---|
Instructor: Sami Rollins
Office: Harney 404
Office hours: T/Th 10:30-11:40am; W 1:30-2:30pm (Zoom only)
Email: [email protected]
Lecture:
Section 01 - T/Th 2:40-4:25pm
Section 02 - T/Th 4:35-6:20pm
Location:
Harney 148 (Kudlick classroom)
TA: Nikhil Matta
Office: CS Labs - Harney
Office hours: MWF 2:30pm-4:30pm (Zoom only)
Email: [email protected]
Official catalog description: Internet application development, including server-side technologies such as scripting languages, template frameworks, web page mining, and distributed computing issues such as peer-to-peer, multi-cast, and distributed agents.
Unofficial description of class topics: This class covers foundational distributed systems topics such as data representation, networked communication, and client-server and peer-to-peer architectures. We will study distributed algorithms required to solve problems including time synchronization, data replication, and consensus. Students will be required to complete pre-work prior to most classes. These assignments may include readings from books or the internet, watching videos by industry professionals, and reading research papers. The class will include a significant programming component. Students are expected to learn the complexities of distributed algorithms through implementation.
Learning outcomes: At the end of this course, students will be able to do the following:
Prerequisite(s): CS 601 and CS 603/673 with a grade of B- or better. Recommended Preparation: Students should be very familiar with Java programming, multithreaded/concurrent programming, and socket/networked programming.
There is no text you are required to buy for this course, but readings will be assigned from various sources that are freely available online including the following: