Assignments
All assignments are due by 23:59 EDT (i.e., Virginia’s local time, before midnight) on their corresponding posted dates. Late assignments lose 3 points for every 24 hours they are late unless prior arrangements are made with the instructor.
* Assignments are subject to change!
Assignment 1
Available Points: 20
A web server with a limited set of methods, status codes, headers, MIME types, and the access log.
Assignment 2
Available Points: 20
This assignment builds on top of the previous one and primarily focuses on conditionals and redirections with support for both long-lived and pipelined connections.
Assignment 3
Available Points: 20
This assignment builds on top of previous assignments and primarily focuses on encoding, content negotiation, and partial content.
Assignment 4
Available Points: 20
This assignment builds on top of previous assignments and primarily focuses on authentication and authorization.
Assignment 5
Available Points: 20
This assignment builds on top of previous assignments and primarily focuses on unsafe methods and server-side execution (CGI).
Extra Point Assignments
Opportunities to earn extra points will be made available on a rolling basis during the semester.
Assignment 0-0
Available Points: 5
A set of mandatory tasks, which will give extra points if done timely.
- Join GitHub
- Subscribe to the discussion board
- Create your private assignment repository
- Tell me what your class repository is
Assignment 0-1
Available Points: 5
A Dokerized echo server implementation.
- Implement a simple echo server
- Run it in a Docker container