Jan-15 - Jan-21
Jan-22 - Jan-28
Jan-29 - Feb-04
  • Assignments:
    • Aliens Attack 0 LargeSoftware: Assigned on Wed, Jan 31 | Starter Code
  • Mon, Jan 29 Lecture: Open lab practice session
    • Topics:
      • Practicing designing functions
      • Practicing working in groups
      • Practice with the BSL docs and APIs
    • Extra Resources:
      • Porpoise (URL provided in class)
  • Wed, Jan 31 Lecture: Designing Aliens Attack 0
Feb-05 - Feb-11
Feb-12 - Feb-18
Feb-19 - Feb-25
  • Assignments:
    • Aliens Attack Version 2 LargeSoftwareProject: Assigned on Mon, Feb 19 | Starter Code
  • Mon, Feb 19 Lecture: Aliens Attack v.2
    • Topics:
      • Refining code
      • Subtyping
      • Errors and error handling
      • format strings
      • stop-when? and ending games
    • Preparation:
      • ๐Ÿ“– Ch 9, "Animated Problem Solving"
  • Wed, Feb 21 Lecture: Structures and Variety
Feb-26 - Mar-03
Mar-04 - Mar-10
  • Assignments:
  • Mon, Mar 04 Lecture: NONE - SPRING BREAK
  • Wed, Mar 06 Lecture: NONE - SPRING BREAK
Mar-11 - Mar-17
  • Assignments:
  • Mon, Mar 11 Lecture: Designing w/Lists
  • Wed, Mar 13 Lecture: Aliens Attack v.4
    • Topics:
      • Adding Lists of aliens
      • Refining the world
      • Refining the shot data definition
      • Adding multiple shots at once
      • Refining draw world
      • Numbers as structured data
    • Preparation:
      • ๐Ÿ“– Ch. 14, "Animated Problem Solving"
      • ๐Ÿ“– Ch. 15, "Animated Problem Solving"
      • ๐Ÿ“– Ch. 16, "Animated Problem Solving"
    • Extra Resources:
Mar-18 - Mar-24
Mar-25 - Mar-31
Apr-01 - Apr-07
  • Assignments:
  • Mon, Apr 01 Lecture: Big Daily Quiz
    • Topics:
      • Longitudinal Practice
  • Wed, Apr 03 Lecture: Aliens Attack v.5
    • Topics:
      • Aliens Ch. 5
      • Encapsulation
      • Abstraction in context
      • Lambda expressions in context
      • Refactoring
    • Preparation:
      • ๐Ÿ“– Ch. 23 "Animated Problem Solving"
Apr-08 - Apr-14
Apr-15 - Apr-21
  • Assignments:
  • Mon, Apr 15 Lecture: Interfaces
    • Topics:
      • CANCELLED, ILLNESS
    • Preparation:
      • ๐Ÿ“– Ch. 25, "Animated Problem Solving"
  • Wed, Apr 17 Lecture: Introduction to Distributed Programming
    • Topics:
      • What is a distributed program?
      • Distributed programming model
      • Design recipe for distributed programming
      • 2htdp/universe
    • Preparation:
      • ๐Ÿ“– Ch. 26, "Animated Problem Solving"
Apr-22 - Apr-28
  • Assignments:
    • Aliens Attack v.6/7: Assigned on Wed, Apr 24
  • Mon, Apr 22 Lecture: Aliens Attack v.6
    • Topics:
      • Protocol diagrams and lifeline diagrams
      • Understanding the 2htdp/universe model
      • An example distributed programming application
      • ping, IP addresses, shell prompt
      • Preparing to make a game distributed
    • Preparation:
      • ๐Ÿ“– Ch. 27, "Animated Problem Solving"
    • Extra Resources:
  • Wed, Apr 24 Lecture: Aliens Attack v.7
Apr-29 - May-05
  • Assignments:
  • Mon, Apr 29 Lecture: Aliens Attack v.8
    • Topics:
      • Aliens Attack v.8
    • Preparation:
      • ๐Ÿ“– Ch. 28, "Animated Problem Solving"
    • Extra Resources:
  • Wed, May 01 Lecture: Mutually Recursive Data