There will be no midterms or final examinations, but your last codewalk may be as late as Friday, 21 April.

Your semester grade is determined by problem sets, in-class quizzes and exercises, and instructor's discretion.

There are no grade quotas, so it is theoretically possible for every student to earn an F in the course, but that has never happened. In past semesters, about one third of the students have earned an A, with most of the other students earning an A- or some kind of B. There are usually a few students who earn a C or F.

Problem Sets

The problem sets determine most of your grade, on the order of 90%.

For each problem set, you will be given three separate grades:

The correctness score represents 30% of your grade on the problem set, the presentation grade is 20%, and the design grade is 50%.

The correctness score is numerical. The presentation and design grades are letter grades.

Presentation Grades

The presentation grades are given according to the following standards:

A: Excellent. The student understands his/her submission and can explain it clearly. The student speaks clearly and with adequate volume to be understood by the audience (not just the grader). The student understands questions as they are asked, and answers them precisely and promptly, with little need for followup questions.

AB: Good, but not excellent. The student has a good understanding of the submission, and can explain it, though followup questions may be necessary in order to get to a precise answer. The student speaks clearly and with adequate volume to be understood by the audience (not just the grader).

B: Adequate. The student has a general understanding of the submission, but may be confused or unable to explain some of the details. The student may not speak sufficiently clearly or with adequate volume to be understood by the audience (not just the grader).

C: Deficient. The student's answers may indicate lack of understanding of the submission and of the relevant course materials. The student may require multiple rephrasings or followup questions in order to answer the question; some answers may remain unsatisfactory even after multiple interactions with the grader. The student may need to be asked repeatedly to speak more clearly or loudly.

F: Missing. The student did not appear for the codewalk, without giving acceptable reason on adequate notice.

Design Grades

The design grades are given according to the following standards:

A: Excellent. The submission is well-organized and well-documented. There are at most a few errors, all minor. Everything is clear and easy to understand without asking the student to explain.

AB: Good, but not excellent. The submission is mostly clear and understandable but may lack organization or have gaps in detail or include errors (in documentation or executable code) that hinder a reader's understanding.

B: Adequate. The student understands most of the relevant course materials, but the submission shows serious flaws in organization or detail.

C: Deficient. The submission indicates lack of understanding of the relevant course materials. Significant portions of the submission are not obvious to a reader, even with the supplied documentation.

D: Incomplete. A substantial number of the required deliverables are missing, incomplete, or wrong.

F: Missing. Not turned in, or so bad as to be little better than nothing.

Quizzes and In-class Exercises

Quizzes and in-class exercises will account for about 5% of your semester grade. This part of your grade includes being present in class to take a quiz, do an exercise, or answer a question when called upon at random by the instructor.

Instructor's Discretion

Another small portion of your grade, up to 5%, is determined by other factors such as the quality of questions asked in class, your helpfulness to other students on Piazza, and the course staff's general impression of how well you have learned what we're trying to teach.

Re-grade Policy

If you believe we made a mistake when grading one of your problem sets, you may submit an re-grade request on Piazza. A re-grade request should

Incomplete or improperly formatted re-grade requests may be ignored.

Our resolution of a re-grade request often forces us to take a closer look at your submission, and it is not unusual for that closer look to result in a lower grade instead of a higher grade for the problem set.

For debugging: Click here to validate.