Course Schedule

(This schedule will be adjusted as the semester progresses. Future topics are a best-estimate on when we expect to cover them.)

Date Event

Week 1

Jan. 17 Course Introduction and Binary Representation Assignments Released:
Jan. 19 Character Encodings (ASCII, UTF-8), Binary Math, and Two's Complement Assignments Released:

Week 2

Jan. 24 C Programming and Logic Gates Additional Readings: Assignments Released:
Jan. 26 Instruction Set Architectures (ISAs) Assignments Released:

Week 3

Jan. 31 Endianness, Memory Hierarchy, and Virtual Memory Assignments Released:
Feb. 2 Memory Allocation and malloc Assignments Released:

Week 4

Feb. 7 Page Eviction, Threads, and pthreads Assignments Released:
Feb. 9 Thread Creation, Join, and the Five State Model Assignments Released:

Week 5

Feb. 14 Synchronization and Dining Philosophers
Feb. 16 Deadlock and The Sleeping Barber Assignments Released:

Week 6

Feb. 21 IPC and Networking Assignments Released:
Feb. 23 Networking: OSI Model and HTTP Assignments Released:

Week 7

You will sign up to take your Midterm 1 exam in the CBTF this week.
Feb. 28 Web Services Assignments Released:
Mar. 2 No Lecture — Mideterm Exam I

Week 8

Mar. 7 API Programming with Flask Assignments Released:
Mar. 9 IaaS and Public/Private Clouds Assignments Released:

Week 9

Mar. 14 No Lecture — Spring Break
Mar. 16 No Lecture — Spring Break

Week 10

Mar. 21 Containers, CaaS and Docker Assignments Released:
Mar. 23 Data Storage and Caching / Local File Storage

Week 11

Mar. 28 Final Project Discussion + Cloud Object Storage (AWS S3, etc) Assignments Released:
Mar. 30 Data Stores and Cloud Architectures Assignments Released:
  • Homework 13 (Due Monday, Oct. 31 by 11:59pm)

Week 12

Apr. 4 MapReduce and SaaS Introduction
Apr. 6 Caching in HTTP (Age and ETag)

Week 13

Apr. 11 No Lecture — TBA
Apr. 13 MP9 Course-Wide Maze

Week 14

Apr. 18 Tokens and SAML2 Authentication (SSO Login)
Apr. 20 Domain Name System (DNS)

Week 15

You will sign up to take your Midterm 2 exam in the CBTF this week.
Apr. 25 Finish Up DNS, Final Project Updates, MP9 Maze (v2)
Apr. 27 No Lecture — Midterm Exam II

Week 16

May. 2 CDN: Content Delivery Networks
The finale of the final project will take place during the final exam period for CS 340, which is 1:30pm-4:30pm on Monday, May 8
May. 8 Final Project Presentations (1:30pm)