All assignments must be done individually, unless the assignment is explicitly designated as a group assignment. All members of a group receive the same grade (no exceptions). Only one member of a group submits the assignment. The instructors/staff do not arbitrate group disputes; group members must handle any and all problems. A group assignment may be done individually, but it must be understood that the amount of work is significantly greater and no extra marks are given for this additional work.
Students repeating the course (for whatever reason) cannot reuse program code that was part of a group project because it is impossible to determine the individual's contribution. Hence, they must do a different project. If another assignment question happens to be the same as one you were assigned in a previous term, you are not permitted to resubmit the same code. You must delete your old code and start over. Self-plagiarism is defined as an academic offence under University guidelines. Contact your instructor if you have any questions about this point.
Assignments are distributed through the course's git repository. To gain access to the repository, follow the directions given in assignment 0, which can be found on Piazza.
Review the assignment coding guidelines before starting each assignment.
Assignments must be submitted using the Marmoset Submission and Testing Server
See this page to find out how to submit to marmoset through a shell using the command line, substituting all instances of CS 241 with CS 246.
Assignments must compile and run on one of the linux.student.cs.uwaterloo.ca computers. See CPU/Applications Hosts for a complete list of server computers.