Course Description
Computer networking, basic communication protocols, network infrastructure and routing. Common application-level protocols and principles associated with developing distributed applications.
With Alan Wagner, the course is poorly structured and the lectures were poor. I only realized halfway through that reading the textbook was more effective than going to lectures. I have heard that this course is much better with other professors.
Difficulty: | 4 | |
Quality: | 1 |
Like all CPSC courses, the material is quite dense and the assignments are heavy. I took this course with Norm / Aastha and both are very competent lecturers who clearly spend a lot of time helping students. The piazza helpfulness rate is outstanding.
When I took this course it had 5 quizzes, 6% each, for a total of 30%, instead of midterms. The quizzes are close-book, biweekly and proctored (1 hour long). They do a good job of making you stay on top of the material and I overall prefer the quizzes.
The assignments are biweekly and also worth around the same amount. But like many CS assignments depends heavily on your programming skills. So far I found the assignments to be challenging and at times vague (but the piazza helps for clarifications). Prepare to spend 10-20 hours per assignment if you are a decent programmer, more otherwise.
Material is difficult conceptually. There is just a lot of it. Very relevant to real life. Recommend as an elective.
Difficulty: | 4 | |
Quality: | 4 |
Great course, even though it is not required for a major, I would highly recommend it. Very in demand skills and applicable content.
Difficulty: | 3.5 | |
Quality: | 5 |
317 with Donald Acton is pretty fun. Networking is sort of my jam though, so I’m a bit biased. I found the text incredibly interesting. It’s really the only instance of me in UBC reading a textbook leisurely just to learn more. You get to learn the protocol stack and how the Internet works! It’s really amazing. I really wish there more assignments though. It’ll give you experience with socket programming which is definitely an asset you want to have as a developer.
100% should take. Networking is an important concept and this course forms the basis of it.
A fairly interesting course that covers the basics of internet computing. The course goes over each of the five layers of the internet and focuses on a few select protocols from each layer (HTTP, SMTP, POP3, IMAP, DNS, TCP, IP, DHCP, BGP, VPN, TLS etc.). Jonatan Schroeder (currently at York University) is a great professor who explains the concepts very thoroughly. Beware that there is going to be a lot of technical documentation reading (RFCs) for assignments and the quizzes/exams focus quite heavily on conceptual understanding.
Very interesting and practical class. You learn a lot ablut networking while doing interesting assignments. Can be on tge kore difficult side in some sections
Difficulty: | 3.5 | |
Quality: | 5 |