uwloo

CS 454Distributed Systems

Units
0.50
Faculty
Mathematics
Subject
Computer Science

When it runs

  1. F24
  2. W25
  3. S25
  4. F25
  5. W26
  6. S26
  7. F26
  8. W27
  9. S27

Ran in 5 of the last 7 terms. Winter 2027: scheduled, 4 lecture sections. Spring 2027: schedule not out yet.

An introduction to distributed systems, emphasizing the multiple levels of software in such systems. Specific topics include fundamentals of data communications, network architecture and protocols, local-area networks, concurrency control in distributed systems, recovery in distributed systems, and clock synchronization.

Prerequisites

Antirequisites

  • Not completed nor concurrently enrolled in any of the following:
    • ECE454 - Distributed Computing (0.50)

Leads to

Fall 2026 sections

Enrolment from UW Open Data, which can trail Quest by up to two days. Instructors and rooms: Schedule of Classes.
SectionClassEnrolledMeets
LEC 001635367 / 70TTh 13:00–14:20
LEC 002678461 / 70TTh 14:30–15:50

Winter 2027 sections

Enrolment from UW Open Data, which can trail Quest by up to two days. Instructors and rooms: Schedule of Classes.
SectionClassEnrolledMeets
LEC 00156880 / 70MW 11:30–12:50
LEC 00258400 / 70MW 13:00–14:20
LEC 00385010 / 70MW 14:30–15:50
LEC 7012198170 / 9999Online or by arrangement

Resources

Around the web

Found by uwloo’s link finder, which checks that each page names CS 454.

Suggest a resource.

Reviewed on UW Flow

59% liked it57% easy65% useful

From 92 ratings and 29 comments on UW Flow. The most helpful comments, quoted as written, without names. Read them all on UW Flow.

  • 2 written assignments and 2 implementation assignments, and final. No midterm. Written assignments were like 50/50 knowledge questions and basic proofs of distributed computing concepts. Implementation assignments were lengthy, requiring multiple weeks to finish. You have to start early or you might get fked. The first one was not too hard once you understood the pattern, since it was kind of just fill in the blanks. The second one was much harder since you had to actually figure out how to implement functions for a distributed file system. The assignment description was 30+ pages on its own.
    For the final the prof gave out a bunch of questions that were more or less the exam questions, so…

    Dec 2019 · didn’t like it · 1 found this helpfulOn UW FlowRemove this

  • I was excited for this course, but at least this offering of the course was pretty terrible. What is talked about in lectures does not match the slides which does not match what is covered on the assignments. Theory covered either seems irrelevant or Wikipediable. I heard its been the same course content from 10 years ago. Everyone I talk to this term has similar opinions. Would not recommend.

    Jul 2014 · didn’t like it · 1 found this helpfulOn UW FlowRemove this

  • One of the most useful courses if you wanna go down the SWE route. Assignments are easy. Project part 1 is straightforward, but part 2 is quite challenging and takes significantly longer. No midterm. Final was hard, mainly because there's so much to study.
    But at the end of it all, I'm really happy that I took this course. Would recommend. Also take it with Samer, he's amazing!

    Apr 2026 · liked itOn UW FlowRemove this

  • One of the most useful courses in CS you can take imo. You cover a range of topics that are key to real-world systems; the course provides a theoretical understanding of how these systems work end-to-end with examples of how the concepts are applied in industry.

    Apr 2026 · liked itOn UW FlowRemove this

  • take it with samer

    Apr 2026 · liked itOn UW FlowRemove this

Discussed on r/uwaterloo

376 posts and comments in 287 threads mention CS 454, January 2012 to December 2024. Quoted word for word, newest first; each reply sits under the post and the comment that started its branch. Search r/uwaterloo for newer posts.

Fall 2024

CS454 Final 4 points, 0 comments

u/Live_Coyote_8463: “Hello, I was wondering if anyone who has taken CS454 could share some insights about the final exam and how to prepare for it: I’m curious about the exam format. Are the questions short and theoretical, or are they more open-ended? Approximately how many questions does it have? …”

View on RedditRemove this

CS 451 vs 454 4 points, 1 comment

“Choosing between these two as I can't fit both in my schedule, which would you say is better to learn distributed systems in general and would you recommend taking both of them or would one of the …”

u/Rarag: “… It's written by the guy who made the course I think CS454 builds more from foundation (e.g. synchronization between distributed processes, ACID transactions). …”

View on RedditRemove this

How was it? CS459 Privacy, Cryptography,Network and Data Security 12 points, 16 comments

“I was planning on taking CS458 Computer Security and Privacy, sadly no longer offered. How was CS459 Privacy, Cryptography,Network and Data Security? For anyone taking it this term. …”

u/LaApplePear: “Thansk Ok-Conclusion & blake-potato for sharing the valuable information!! I composed a side-by-side comparison of the two mentioned courses. CS453 and CS459. …”

u/Kassaking777: “I believe for CS459, there's a coreq CS456/454. You have to either already taken one of 456 or 454, or taking one of them with 459.”

View on RedditRemove this

CS 453 3 points, 2 comments

u/PrizeCandidate8483: “How is CS 453 in terms of workload, difficulty? I am taking it this term with Prof. Yousra Aafer and Meng Xu. (Especially, if someone can contrast it with the workload of Distributed Systems - CS 454).”

View on RedditRemove this

Spring 2024

Interesting courses for CS upper year (3A+) 13 points, 14 comments

“I am in CS, and I am just (after exams) done with with 2B. I only have CS 341 and CS 350 left in the mandatory courses for CS, and I will be on my 3A term in the coming Winter term. …”

u/james_dev_123: “… So, CS 454 seems like an obvious choice. But... I really don't remember much from my CS courses. A really interesting course I took was East Asian History. …”

View on RedditRemove this

CS 459 Co-requisites 3 points, 1 comment

u/Gauss_given_order: “How important/relevant are the co-reqs (CS 454/456) to the content in CS 459? When the course was offered as one of the 489s, there were no co-reqs, which makes me wonder why this change was made. Adjacently, why are these co-reqs to CS 489: Secure Programming? …”

View on RedditRemove this

Winter 2024

Check it elsewhere for Fall 2026

Calendar versions

Undergraduate Calendar