Schedule

A week in this course runs Wednesday through the following Monday, across the weekend:

Wed (class) Mon (class) Tue (no class)
Assignment may go out due
Reading due before class
Quiz at the start, 2 attempts
Presentation of the assignment due the day before

Why the week is arranged this way is on How the week works.

Week 5 (9/23—9/29): Java in a file; names, equality and what a variable holds

Wed 09/23 — Monday’s program moves from a browser tab into a file in IntelliJ IDEA, with Check.is where where: was. A4 opens with a short setup survey: which Java you have, and where you run it.

Mon 09/28 — what a name holds in Java. == and .equals, and why two equal strings can be two different things.

Week 4 (9/16—9/22): State in Pyret, Progress Exam, transition to Java

  • Assignment: None
  • Presentation: A3 on Wednesday 09/16, two students.
  • Exam: Progress Exam 1 — Pyret, Sep 21, 2026 — First half of class. Open book, open notes, no AI. Pyret, not Java.
  • Quiz: None

Each class this week is two halves.

  • Wed 09/16 — a test drive of the exam, then var, := and for each: loops and state in Pyret.
  • Mon 09/21 — Progress Exam 1, then the first Java class: the same ideas in a second language.

No new reading. Wednesday’s material is taught from the board, and the textbook covers variables in its Python half rather than its Pyret one. Revision is the work instead, and the exam page says how to do it.

Week 3 (9/9—9/15): Lists, map and filter, recursion

A3 comes in three parts that open on different days. Part A needs only Wednesday’s class, so it can be finished Wednesday evening. Part B needs Monday’s, and starting it early makes it look impossible when it is not. Part C uses A2’s if and and/or and is open from Wednesday.

[DCIC] 5.2 — Processing Lists is the half taught on Monday, so reading it over the weekend puts you ahead of the class that covers it.

Week 2 (9/2): Conditionals and booleans

A one-class week. Monday 09/07 is Labor Day, so this week is Wednesday only and the next class is Wednesday 09/09. Under the one-class rule, the reading goes out with the class it opens and is due before the next one.

The reading goes out with this class rather than before it, so you are not expected to have read it beforehand — we start conditionals together on Wed 09/02, and [DCIC] 3.4 — Conditionals and Booleans is there to consolidate it afterwards.

There is no class between 09/02 and 09/09, so A2 has a full week. Conditionals are the last piece you need before we start writing programs that make decisions, which is most of what comes next — this is not a section to skip.

Week 1 (8/26—9/1): Values, expressions, names, functions

Week 0 (8/24): Intro, Pyret, values, expressions