Assignments
In CS 521, we’ll have two types of assignments:
- Labs (small-scale, for practice)
- Projects (larger scale, for assessment)
Lab assignments are graded as pass/fail, and you are welcome to have them graded interactively in class, office hours, or the lab session so you can correct any mistakes.
Each assignment will include a description of the problem, breakdown of points, permitted libraries, etc. You can discuss assignments with your classmates, but sharing code or pseudocode is not acceptable. Please see the grading policy for more information.
Submitting Assignments: use the project links below to create a git repository for your work. To submit, check your code into your git repository before the deadline.
Late Policy:
- Due dates are posted on the course schedule page. Assignments are due at 11:59pm on the due date.
- Late lab assignments are not accepted. There are no exceptions to this rule.
- Late projects are deducted 10% per day for a maximum of three days. Afterward, no credit will be given.
Homework/Labs
- Lab 0 - Getting to Know You
- Lab 1 - Setting up a Virtual Machine
- Lab 2 - Implementing ‘cat’
- Lab 3 - Reciprocal Cipher
- Lab 4 - CSV Query Engine
- Lab 5 - Linked List
- Lab 6 - Signals and Pipes
- Lab 7 - Porting to Go
Projects
- Project 1 - Disk Usage Analyzer
- Project 2 - Elastic Array
- Project 3 - Command Line Shell
- Project 4 - Parallel Cryptocurrency Miner
- Project 5 - Cloud Storage System