Grading Policy

Tiers

Grades will be assigned based on a set of minimum thresholds needed to reach each tier.

Homework tiers

For homework assignments, these requirements are broken down by module. The following table lists the minimum number of completed homework questions for each tier. The table shows the total number of questions that must be completed (have a score of at least satisfactory) and the number of those that must have achieved a score of excellent. So, for example, looking at the Basics module, the A tier show 8/4, which means that to be a candidate for an A, a student must complete at least 8 questions from the module (a mark of satisfactory or excellent indicates completion), with at least 4 of those at the excellent level.

Note each week there will be four questions issued, so these totals are predicated on the number of weeks scheduled for each module.

Tier Basics Control Flow Data Structures Data Representation Objects
weeks 2 2 1 3 1
A 8 / 4 8 / 4 4 / 2 12 / 6 4 / 2
B 7 / 2 7 / 2 4 / 1 9 / 3 4 / 1
C 6 / 0 6 / 0 3 / 0 6 / 0 0 / 0
D 4 / 0 4 / 0 2 / 0 3 / 0 0 / 0

Exam tiers

There will be two exams. The questions will be scored as satisfactory or no points. There is no partial credit. The scores from the exams will be summed. The exams will each consist of two sections, Fundamentals (60 total questions across the two exams) and Challenges (12 total questions across the two exams), which will be scored separately.

Here are the scores required to be eligible for each tier.

Tier Fundamentals (60) Challenges (12)
A 48 8
B 40 5
C 32 3
D 24 1

Grade tier breakdown

A tier

To receive an A, a student must:

  • meet the homework question requirements for the A tier across all modules as listed above
  • complete three challenge questions
  • complete all labs
  • complete 48 out of 60 Fundamentals questions across the two exams
  • complete 8 out of 12 Challenge questions across the two exams

B tier

To receive a B, a student must:

  • meet the homework question requirements for the B tier across all modules as listed above
  • complete one challenge question
  • complete all labs
  • complete 40 out of 60 Fundamentals questions across the two exams
  • complete 5 out of 12 Challenge questions across the two exams

C tier

To receive a C, a student must:

  • meet the homework question requirements for the C tier across all modules as listed above
  • complete all labs
  • complete 32 out of 60 Fundamentals questions across the two exams
  • complete 3 out of 12 Challenge questions across the two exams

D tier

To receive a D, a student must:

  • meet the homework question requirements for the D tier across all modules as listed above
  • complete five labs
  • complete 24 out of 60 Fundamentals questions across the two exams
  • complete 1 out of 12 Challenge questions across the two exams

F tier

Students who fail to meet the minimum requirements for the D will receive an F.

Extra problems and challenges

In each module, there will be more problems released than are required for any tier. There will also be more challenges issued than are required for any tier.

We would like to encourage you to do those even if you have met the minimum requirements for the tier you are targeting (learning to program is all about getting lots of practice). We also don’t want you to be in a situation where you are short in some category with no hope to demonstrate that you eventually learned the material.

To that end, problems done in excess of a target tier can be used to fill in some of the gaps. We will use your status across all of the various categories to determine which tier you currently qualify for. Then we will look at any excess work to see if it can be used to bubble you up to the next tier. We will repeat this process until there is no more movement possible. Any excess work remaining after that will be used to adjust final grades through the +/- grades between tiers.

Exchange rate

Homework problems

One excess homework problem can be exchanged for one of the following

  • 1 homework problem from an earlier module (problems cannot be banked for future deficits). Excellent problems can only be replaced with other Excellent problems.
  • 4 exam fundamentals problems
  • 1 exam challenge problem
  • the ability to make a first submission of a lab after the due date has passed. This doesn’t replace the lab, just allows you to enter the revision cycle (honestly, it would be better to just submit something by the deadline)

Challenges

One excess challenge question can be exchanged for one of the following

  • 3 homework problems
  • 12 exam fundamentals problems
  • 3 exam challenge problem

If you find yourself with an excess of exam points, they can be applied to homework problems and challenges by reversing these rates.