Assignment requirements are subject to change until the assigned date–please refresh the document to ensure you are on the latest version. Any changes or clarifications to assignments after the assigned date will be announced on EdStem.

All assignments are due by 11:59 PM EDT on the listed due date, except where otherwise noted. Please see our course policies for details.

Programming Assignments

Project 1: Snowcast Tue, Feb 1 Wed, Feb 16 Milestone due by Fri, Feb 4
Sockets demo (video)
Sockets demo (code)
Sockets demo (notes)
Project 2: IP Thu, Feb 24 Tue, Mar 22 Milestone due by Mon, Mar 7
Group assignment form
IP milestone signups
Project 3: TCP Mon, Apr 4 Mon, May 2 Milestone I due by Fri, April 15, Milestone II by Fri, April 22
Milestone II gearup video
Milestone/Grading signups
Final project 6 May 19 May by 11:59pm (no late days)

Homework Assignments

Homework 0 Thu, Jan 27 Tue, Feb 1 by 11:59pm
Homework 1 Tue, Feb 15 Wed, Feb 23 Solutions
Homework 2 Thu, Mar 10 Thu, Mar 17 by 9am Solutions
Homework 3 Wed, April 20 Tue, Apr 26


Midterm Thu, Mar 17, 12pm Fri, Mar 18 by 11:59pm

Previous exams

You are welcome to view the following exams from previous versions of the course. Note, however, that these exams were given by different instructors and may not reflect all of the topics covered by this version of the course. You are not responsible for any content that may be mentioned in these exams that was not covered in our class.



Late policy

See Late Policy on our syllabus.