Grading
20% In-class test
30% Final exam
50% Assignments
- The in-class test will be held in tutorial approximately in the middle of the term.
- To help you prepare for the tests and to supplement the in-class lecture material, I may give you occasionally a few problems that you are supposed to solve on your own, either by posting them on the website or including them in the lecture slides. You will not be asked to turn in your solutions and they will not count toward your grade. Solutions to some of these problems will be covered in tutorial.
- There will be three assignments in total, with weights 15, 15 and 20 percent of the total grade, respectively. Assignments will be tri-weekly. Most assignments will have a small written portion and a significant programming component.
- Some assignments may have one or more optional "bonus" parts. Since all assignment grades will be added and averaged in the end, any extra
points you receive in one assignment can offset lower grades in other components of the course (other assignments, exams).Late Assignments
Late penalties for assignments are as follows. Assignments are due at 11:59pm on the due date and should be submitted to the TA in electronic form. Exact submission instructions will be provided with the first assignment.
For each day late, including weekends, 15 percent of the total possible points will be deducted (a day ends at 11:59pm). For example, if an assignment is due on Friday, no late penalty will be assessed if it is turned in by midnight on Friday. If turned in before midnight Saturday, there will be a 15 percent penalty, etc.
No work will be accepted if it is more than four days late.
Email & Newsgroup Traffic
- Please do not send email directly to the TAs. They will not be replied.
- Main forum for answering questions about class or about the assignments is the class bulletin board. Kyros will be handling all email responses to that group, possibly delegating them to one of the TAs.
- Appropriate use of newgroup: clarifications on assignment, on lecture material, general concerns about the course, or other remarks that are appropriate for all students to see/participate in.
- Do NOT broadcast pieces of your code to the bulletin board. Specific or general implementational questions whose answer would benefit all students in the class are appropriate. However: the bulletin board is NO replacement for the tutorial hour. That should be the main forum for asking/answering questions of this sort. Note that we may
organize additional "TA office hours" about 3-5 days before assignment deadlines to answer assignment-related questions.- Questions of the form "I cannot find the problem with my code; here it is, can you help me" are unlikely to be replied, so don't count on it. If you have a question, come with them to my office hours, to the TA office hours, or to the tutorials.
Academic Honesty
- Tests and exams in this course must be strictly individual work.
- Each assignment will have a programming component and a written component. Assignments will be strictly individual work.
- For programming components of an assignment: Collaboration on a programming component by individuals (whether or not they are taking the class) is encouraged at the level of ideas. Feel free to ask each other questions, brainstorm on algorithms, or work together at a blackboard. Be careful, however, about copying the actual code for programming assignments or merely adapting others' code. This sort of collaboration at the level of artifacts is permitted if explicitly acknowledged, but this is usually self-defeating. Specifically, you will get zero points for any portion of an artifact that you did not transform from concept into substance by yourself. If you neglect to label, clearly and prominently, any code that isn't your own or that you adapted from someone else's code, that's academic dishonesty for the purpose of this course and will be treated accordingly.
- The principle behind the collaboration rule is simple: I want you to learn as much as possible. I don't care if you learn from me or from each other. The goal of artifacts (programming assignments) is simply to demonstrate what you have learned. So I'm happy to have you share ideas, but if you want your own points you have to internalize the ideas and them craft them into an artifact by yourself, without any direct assistance from anyone else, and without relying on any code taken from others (whether at this university or from the web).
- There are some circumstances under which you may want to collaborate with someone else on the programming component of an assignment. You and a friend, for example, might create independent parts of an assignment, in which case you would each get the points pertaining to your portion, and you'd have the satisfaction of seeing the whole thing work. Or you might get totally stuck and copy one subroutine from someone else, in which case you could still get the points for the rest of the assignment (and the satisfaction of seeing the whole thing work). But if you want all the points, you have to write everything yourself.
For purposes of this class, academic dishonesty is defined as:
- Any attempt to pass off work on a test that didn't come straight out of your own head.
- Any collaboration on artifacts in which the collaborating parties don't clearly and prominently explain exactly who did what, at turn-in time.
- Any activity that has the effect of significantly impairing the ability of another student to learn. Examples here might include destroying the work of others, interfering with their access to resources (eg. digital cameras), or deliberately
providing them with misleading information.[Note: this policy, with minor modiciations, was developed by Michael Scott at the University of Rochester]
Site last modified on Wednesday, May 14, 2008
Send questions or comments about this page to kyros@cs.toronto.edu