Assessment
How you measure your progress · Course home · Grading rubrics
This is a self-study course: nothing here is graded by a server or an instructor. “Assessment” means a system that tells you — honestly — whether you are ready to move on. Instructors who adopt the course can use the same components and rubrics directly.
The assessment components
| Component | Count | Purpose | Self-check mechanism |
|---|---|---|---|
| Exercises | 8–12 per unit | daily practice | predict-the-output answers included; coding tasks verifiable by compiling |
| Labs | 1 per unit (01–15) | hands-on synthesis | published solution + lab rubric |
| Quizzes | 10 questions × 15 units | concept verification | full answer key, explanations included |
| Self-assessment system | 34 instruments × ~11 questions | scheduled testing: weekly, topic, cumulative, final | hidden answer keys, explanations, scoring bands — Self-Assessment Hub |
| Projects | 3 (Weeks 5, 10, 16) | integration | rubric per project in Grading |
| Practice final | 20 questions (Unit 16) + 2 comprehensive practice finals (A and B, 25 questions each) | course-wide review | full answer key |
How each component works
Exercises (every session)
Three kinds, always in this order of difficulty:
- Concept checks — vocabulary and “explain in your own words” questions.
- Predict the output — write your answer before running; correct answers for every item are collected at the bottom of the sheet.
- Short coding tasks — small programs from a spec; the compiler is your first checker.
Labs (every unit)
- Read the lab brief and requirements.
- Build your solution from the starter (or from scratch — both count).
- Compare your output with the expected output in the brief.
- Open the published solution only after your attempt — then diff against it. Different-but-correct is fine; the rubric decides.
- Score yourself with the lab rubric.
Each lab also contains a Debug It file: a program with seeded bugs to find and fix before looking at the fix list.
Quizzes (every unit)
- 10 questions, four types: multiple choice, true/false, predict-the-output, find-the-bug.
- Attempt all 10 before opening the answer key. The key explains why, not just what — reading it is the lesson.
- Score with the bands below.
Projects (Units 05, 10, 16)
Projects are bigger, multi-session pieces of work with a brief, starter code, and a solution. Score them with the project rubrics in Grading. In self-study mode the rubric is a mirror, not a judge: it tells you what to improve before you call the project done.
Self-scoring bands
| Score | Verdict | Action |
|---|---|---|
| ≥ 90% | Ready | Continue to the next unit or component. |
| 70–89% | Almost | Re-read the sections your wrong answers point to; retake after a day. |
| < 70% | Not yet | Redo the unit’s exercises + revision sheet, re-run the examples, retake. |
Progress rule: a unit is complete when its lab works (rubric-checked) and its quiz is ≥ 90%. The course’s recommended sequence depends on it — later units assume earlier ones.
Recommended record-keeping
Keep a single progress file (paper or digital). Suggested columns:
Unit | Quiz score | Lab rubric score | Weak spots | Date
01 | 9/10 | 92/100 | endl vs \n | 2026-10-01
Weak spots feed your revision before the next unit — and the practice final in Unit 16 reviews them all.
Honesty policy (the honour system)
The solutions are published on purpose. The system only works if you: attempt before checking; build before diffing; score honestly. “Finishing” pages is easy; the quiz bands and rubric lines are what actually protect your future self — in Unit 16 and in every program you write after the course.
Related: How to Study · Grading rubrics · Syllabus