Assignments

PublishedSep 30, 2026
Updated—
DueOct 6, 2026

Builders that change in place, four predictions checked before they run, and a die you can test because its seed is fixed.

PublishedSep 23, 2026
Updated—
DueSep 29, 2026

The stripe and the flag drawn in text, with Check.is where where: was. First, a three-question setup survey: a GitHub username, where you run Java, and which Java that is.

PublishedSep 9, 2026
UpdatedSep 14, 2026
DueSep 15, 2026

One question, asked of a whole list. First with the built-in list functions, then by writing one yourself, then about people rather than stripes.

PublishedSep 2, 2026
Updated—
DueSep 8, 2026

Programs that branch. Small, because Week 2 is a single class.

PublishedAug 26, 2026
UpdatedSep 7, 2026
DueSep 1, 2026

Build a flag in Pyret, replace every repeated number with a name so the whole thing scales from one value, then turn it into a function you can call at three different sizes.

No matching items

Postmortems

Written after an assignment is marked and returned: the mistakes that showed up in enough files to be worth explaining once, and the places the assignment page itself was the problem. Nothing here is graded — but the errors in it are the ones that will cost points next time.

Title Description
A3 postmortem — where the answer came from Both of this week’s findings are the same mistake wearing two hats: the answer was read off the code instead of worked out from the rule.
A2 postmortem — the order of the questions Eight of fifteen files answer every case correctly. The other seven all have a green test suite, and that is the interesting part.
A1 postmortem — what the class got wrong The mistakes that came up in enough files to be worth writing once rather than seventeen times, and the two the assignment page caused.
No matching items

Exams

TBD