Course Policies

Please read these policy statements, so that there will be no surprises during the semester. These are my general policies; they may be overridden for certain courses, particularly CS110, where the policy is jointly created by the faculty involved in that course.

Reaching Me
Collaboration and Academic Honesty

Reaching Me

I like hearing from students, and I want to keep the lines of communication for questions or comments open. If your question or comment is of general interest, please post to the course conference, so that I can followup with a response that everyone can read.

If your comment or question is individual, I prefer that you reach me by email whenever possible. This lets me be more thoughtful in my reply than phone or IM (I never use IM).

I check my email often, probably too often, and I usually try to check my email at home in the evening, but I don't always have time. However, you should not expect an instant response, especially at night or on the weekends. The same goes for messages on the course conference (though perhaps another student will be able to respond to a message on the conference).


If you have a learning disability or any other special need, please contact me and we can discuss how I can help you. I'd like everyone to do well in my classes, regardless of other difficulties.

Attendance Policy

I assume that students are responsible adults, and therefore, I assume that your absences from class are due to important tasks or conflicts. I respect your ability to run your life. I do not usually take attendance: college is not high school. However, with this respect comes some responsibility.

Lateness Policy

Deadlines are a necessary evil: we're all busy people with many demands on our time, and many tasks would never get done unless a deadline forced us to do it. Since many courses build skills or a project over the time of a semester, it's necessary to have deadlines for various milestones, rather than just allowing all work to be due at the end of the term. Finally, of course, there are practical aspects at my end: I need work to flow in to be graded and returned, rather than doing it all at the end.

That said, it's often the case that the exact placement of a deadline is somewhat arbitrary: must it be due Monday, or would Tuesday do? What if you have a dentist appointment or a job interview or a 10-page paper in another class or some other important task that makes Monday difficult.

Rather than try try to sort all these things out with students, I favor the idea of "lateness coupons." The idea of this is that each student gets a few (usually on the order of 5 or 6) "free" coupons, each good for turning in an assignment one day late. So, if you want to turn in the assignment on Tuesday so that you can work on that 10-page paper that's due Monday, you can "spend" one of your lateness coupons, without asking me for permission.

You can spend more than one lateness coupon on a single assignment: If you have N lateness coupons, you can turn in one assignment N days late, or N assignments 1 day late, or N/2 assignments 2 days late, and so forth.

Of course, you should try to arrange your schedule so that you can avoid spending any lateness coupons.

Lateness coupons are for scheduling purposes, not for dealing with unforeseeable emergencies. I still grant extensions for the usual things, such as illness or deaths in the family. If you're stricken with a bad stomach flu the day before an assignment is due, or your grandmother dies and you have to go home, you need not spend lateness coupons for these unfortunate events. Please understand that extensions like these must be for true emergencies; in general, I find that students can tell the difference between unforeseeable problems and scheduling difficulties. If you have any questions, please ask.


Sometimes things happen that affect the whole class: the computers are down, the power goes out, the campus is shut down due to snow, and so forth. If some such calamity occurs, "the clock stops" on that assignment, and only resumes once the calamity has definitely ended. So, if the server goes down at 10pm when an assignment is due at midnight, there's no need to call me at home and ask for an extension (yes, this happened). Just assume that I'll do something reasonable. In this case, the deadline was moved to the next midnight. I understand that this can cause a hardship for students who, for example, need to leave campus the next day, which would not have caused any difficulty were it not for the calamity. In that case, an individual extension is warranted.

The end of the semester is a busy time for all of us, and I cannot do a good job grading assignments and preparing exams if I am grading a flurry of late assignments. Therefore, I'm very reluctant to grant extensions beyond the the last day of classes.

Grading Standards

Here are the percentage cutoffs that I use for determining letter grades.

The mapping from numerical scores to letter grades
Average Grade
93-100 A
90-93 A-
87-90 B+
83-87 B
80-83 B-
77-80 C+
73-77 C
70-73 C-
60-70 D
below 60F

Percentage grades are rounded off to the nearest whole number, and if you are just on the edge, you will receive the higher letter grade.


Sometimes everyone in a class deserves an A. Sometimes no one does. The classic curve requires me to give as many Fs as As, as many Ds as Bs, and the bulk of the grades will be Cs. Furthermore, the philosophy of curving says that there is no absolute standard of performance, but that as long as you do better than your classmates, you deserve a good grade, even if you have not mastered the material. Instead, I believe that a grade of A should mean excellent performance and complete mastery of the material. Consequently, I avoid curving.

It does happen, however, that a particular exam or assignment is too hard or too easy, in which case I will make adjustments for that, typically by moving the scores up/down so that the class median falls in the B's.


I try hard to be consistent and fair, but I am not infallible. If you think that I (or the teaching assistant) have made a mistake in grading a homework, program, test, or whatever, come and discuss it with me. You must logically argue that it is a mistake or is inconsistent, and not just plead for extra points.

Such discussions must be done in private in my office. I don't discuss individual grades during class, even if we are going over a test or anything else I have just handed back.

Graded Work

You should keep all your graded work until after the semester is over and you have received your final grade. It sometimes happens that I mis-record one of a student's grades, and if you have kept your graded work, such clerical errors can be fixed.

Extra Credit

Students who have just done badly on an assignment or exam sometimes ask me for an extra credit assignment, but that's not fair to other students in the class. I would have to allow everyone in the class to improve their grade as well, but then all I've done is add more assignments to the class. The way to improve your grade is to study hard and do better on the upcoming tests and assignments. I'm happy to help you do that.

Time and Work

College legislation (Book 2, Article VI, Section 1K) says that a work for a course shall not exceed eleven hours a week.

On the other hand, programming is always time consuming, and it's often hard to predict how long a task will take. Sometimes I fix a bug in five minutes, and sometimes I think about it the wrong way and it takes five hours to squash.

The preceding two facts are difficult to reconcile. Some students are willing and able to put tremendous amounts of time into an assignment, working well beyond the prescribed limits. Other students don't, either because they have other obligations (paid work, for example) or other priorities (sports, clubs, organizations and so forth). I don't believe that a student should be disadvantaged in my class because she is unable or unwilling to put in excessive amounts of time. So, here is my current policy:


Since I believe that collaboration fosters a healthy and enjoyable educational environment, I encourage you to talk with other students about the course and to form study groups.

Unless otherwise instructed, feel free to discuss problem sets with other students and exchange ideas about how to solve them. However, there is a thin line between collaboration and plagiarizing the work of others. Therefore, I require that you must compose your own solution to each assignment. In particular, while you may discuss problems with your classmates, you must always write up your own solutions from scratch. It is unacceptable for two students to turn in copies (or near copies) of each other's solutions. I will interpret such a situation as a violation of the Honor Code, and will bring it before the General Judiciary. When in doubt about acceptable levels of collaboration, please ask me for clarification.

In keeping with the standards of the scientific community, you must give credit where credit is due. If you make use of an idea that was developed by (or jointly with) others, please reference them appropriately in your work. E.g., if person X gets a key idea for solving a problem from person Y, person X's solution should begin with a note that says ``I worked with Y on this problem'' and should say ``The main idea (due to Y) is ...'' in the appropriate places. It is unacceptable for students to work together but not to acknowledge each other in their write-ups.

When working on homework problems, it is perfectly reasonable to consult public literature (books, articles, etc.) for hints, techniques, and even solutions. However, you must cite any sources that contribute to your solution. Assignments and solutions from previous terms of this course are not considered to be part of the ``public'' literature. You must refrain from looking at any solutions from previous terms of my classes. It is my policy that consulting solutions from previous terms of my classes constitutes a violation of the Honor Code.

Scott D. Anderson

This work is licensed under a Creative Commons License | Creative Commons License | Viewable With Any
Browser | Valid HTML 4.01! | Valid CSS!