Algorithms' Grading Policies
Grading Scheme:
The course is graded along two dimensions: participation and exams.
Participation is worth a total of 60% of your grade and is calculated
as follows:
- 50%: Homework.
- 10%: Class and/or Office Hour Participation.
Exams are worth the other 40%, distributed as follows:
- 10%: Midterm #1.
- 10%: Midterm #2.
- 20%: Final.
Within the A to D range, my grading scheme will be relatively linear.
However, if you fail to participate up to some minimum level,
I reserve the right to assign you a non-passing grade.
In particular:
- On-time attendance to class is absolutely required.
Arrive on-time as not only a courtesy to me, but also to your classmates.
I expect no more than one unexcused absence.
I expect no more than two late arrivals.
- Homework participation is absolutely required.
Why?
I believe that most of what is learned in this class comes about by actively struggling
with difficult homework problems, coming up with solutions to them (either on your own,
in office hours, and/or in a small study group), and then discussing them as a class
in the next lecture.
You cannot benefit from this paradigm if you don't do the homework in a timely fashion.
I expect no more than one missed long (Thursday) homework.
Additionally, no more than one missed short (Tuesday) homework will be allowed.
I've been told by some of my colleagues that, by allowing you to miss a certain number of homeworks,
I am ensuring that you will do exactly that.
Rather, as opposed to being "what's allowed", these thresholds are in place so
that there is no ambiguity about the minimal level of participation expected
if you wish to pass this course.
On the other hand, because these homeworks are the most powerful learning
tool that I use, it would be to your great benefit not to miss any.
To encourage you to do all of the homeworks, I offer the following incentive:
make a sincere effort on each and every homework that is assigned, and I will ignore
your two lowest homework scores when calculating your overall homework percentage.
Maximizing Your Algorithms Experience
The main reason for such a steady and consistent workload
is to keep you actively engaged in the material as we cover it.
Why? There is a big difference between passively digesting material and actively
exploring it.
All of my grading policies -- the stress on attendance and homework --
are designed to foster such active exploration.
The best way to improve your grade is to aggressively maximize your learning on
the homework sets.
If you have a score below 85% or so (on average, excluding extra-credit),
odds are you are not seeking help as much as you should.
I am very happy to guide you as you work through your solutions, review them for correctness
before you turn them in, etc. -- and this is a fabulous reason to come to office hours!
To be blunt, students who achieve this level (or above) on homeworks tend
to have a much deeper understanding of the material, and this is typically
what is required to do well on the exams.
Another great way to improve your grade is to do extra credit (EC) problems.
Since EC is added as a freebie onto the required part of the homework score,
this grading will be especially strict. Again, using office hours to maximize
the return you get on EC effort is encouraged.
You should also carefully read the homework solution sets passed out in class.
These are an excellent learning tool, in much the same way that reading solid, elegant code
is a great way to learn how to program. As an added benefit, if you can make suggestions
about how to improve a given solution set (suppose you find a bug or come up with a simpler
way of explaining something), I will award extra credit when you bring this to my attention.
Special Circumstances
I am intimately aware that, from time to time, emergencies, unforeseen circumstances -- or
simply life at Mudd -- can take over.
In such cases, you simply need to pro-actively seek me out as soon as possible so
that we can determine what course of action is most reasonable.
For example, if you are sick or have a special reason for a missing class,
send me email in advance; otherwise, your attendance in class is expected.
Similarly, if you need an extension on a homework for some reason, simply
let me know beforehand and we'll make an arrangement for you to turn it in late (you
would then also need to sit out during that portion of lecture where we discussed the solution).
What I do not look favorably upon is passive flakiness! If you simply don't show up, show up
late, or fail to turn in an assignment, there are very few scenarios that will
spark my sympathy; such events will be treated as "unexcused."
(Okay, maybe my heart would bleed a bit if your grandmother was hit
by a UFO as she was driving you to class and thus you couldn't inform
me until later, but aside from an excuse like that...)