Achieving your course grade goal

Written by Julie Zelenski

We hope your primary goal in taking this course is to learn and master the material and strengthen your programming chops, but earning a pleasing grade for your efforts is likely somewhere in the mix as well. Happily, these goals co-exist nicely! We have a sequence of lab exercises and assignments that guide and challenge you to build up your skills and we will reward you for working hard on them. The exams will follow up to let you demonstrate that growing mastery. You will be the best judge of how much a given course component contributes to your learning (and thus how much to emphasize it for its learning benefit), but we want to share the general scheme by which course grades are determined, so you can make informed choices that optimize for great outcomes in both.

Coursework

There will be weekly labs and regular programming assignments. Most of your learning will come from this hands-on work. Reading the text and listening in lecture only go so far, it is only by getting your hands on the keyboard and investing in exploring, observing, developing, and debugging that truly builds up your skills and accelerates your mastery. Your efforts in lab and assignments contribute 50% of your course grade.

There will be 8 labs in spring quarter and 25 points are designated for each. We expect participation in 7 of the 8 labs, which sets the total lab points available as 175. You will earn full credit having missed one lab or can earn a nice bonus for having attended all labs.

The writeup for each assignment will indicate the number of functionality points available (typically 75-150) and how points will be apportioned in grading (re: sanity, comprehensive, robustness, stress, efficiency, and so on). Assignment code review is scored using buckets (--/-/ok/+ which roughly correspond to percentages 50/70/85/100, these style buckets usually contribute ~20% relative to functionality total). You can also earn a few bonus points for making an on-time submission. The details for a particular assignment may be a bit different, so refer to the writeup to be sure.

Your coursework percentage is the sum of lab and assignment scores divided by the total number of available points. Attending all labs or earning on-time points adds to the numerator but not the denominator, making them true bonus points. Mapping percentage to letter grade will use the ordinary scale:

>= 90% A-/A/A+
>= 80% B-/B/B+
>= 70% C-/C/C+
>= 60% D
<  60% Not passing

Exams

The midterm reports on your mid-quarter progress and the final exam assesses the depth and completeness of your ending mastery. The two exams taken together are 50% of your course grade. The final's weight is about twice (33%) that of the the midterm (17%). Dividing your exam score by the number of points gives a percentage, and the above scale maps percentage to letter grade. The exam letter grade may be curved up a bit based on exam statistics and instructor's discretion, but will not be any more strict than as stated.

Course grade

The course grade is computed from 50% coursework and 50% exams. Median course grade is generally placed in neighborhood of B/B+ border. Coursework scoring is on absolute scale, no curve applied, and scores are very strong (median homework average trends in mid 90s, which is phenomenal!) Exams typically have lower absolute score (e.g. median around 72, quite respectable for a challenging exam). When you aggregate the two together, they produce a course grade median around the targeted B/B+. Extrapolating from raw numbers gives you a reasonable idea of where your course grade is headed. You can run some what-if analysis to try out different scenarios (what if my performance stays same/goes up/goes down?) to see how much of any effect possible changes would have.

For the CR/NC grading option, any course grade of C- or higher earns CR.

To pass the course, both the coursework and exam aggregates must each be passing work. Restated, if the composite of your exams is failing, then you will fail the class in spite of an astounding performance on coursework or vice versa. Passing performance on the coursework is a percentage >= 60% on the aggregate of all assignments/labs. Passing performance for the exams will be set at around -1.75 standard deviations below the class median of the composite score of the two exams.

Good learning and good grades

Labs

Assignments

Exams