Jan-12 - Jan-18
Jan-19 - Jan-25
  • Assignments:
  • Mon, Jan 19 Lecture: Class cancelled for MLK Day
  • Wed, Jan 21 Lecture: More Basic Calculations with Dr Racket
Jan-26 - Feb-01
Feb-02 - Feb-08
Feb-09 - Feb-15
Feb-16 - Feb-22
  • Assignments:
    • Structures ProblemSet: Assigned on Mon, Feb 16 | Assignment
    • Aliens Attack Version 2 LargeSoftwareProject: Assigned on Mon, Feb 16 | Assignment
  • Mon, Feb 16 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 18 Lecture: Structures and Variety
Feb-23 - Mar-01
Mar-02 - Mar-08
  • Assignments:
  • Mon, Mar 02 Lecture: NONE - SPRING BREAK
  • Wed, Mar 04 Lecture: NONE - SPRING BREAK
Mar-09 - Mar-15
  • Assignments:
  • Mon, Mar 09 Lecture: Designing w/Lists
  • Wed, Mar 11 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-16 - Mar-22
Mar-23 - Mar-29
Mar-30 - Apr-05
  • Assignments:
  • Mon, Mar 30 Lecture: Exam 1
    • Topics:
      • Individual, paper exam
  • Wed, Apr 01 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-06 - Apr-12
  • Assignments:
    • Lambda abstractions ProblemSet: Assigned on Mon, Apr 06 | Assignment
    • Aliens Attack v.4 Resubmit: Assigned on Mon, Apr 06 | Assignment
  • Mon, Apr 06 Lecture: Class cancelled - school closed
  • Wed, Apr 08 Lecture: Objects, object-oriented programming
    • Topics:
      • local blocks
      • multiple behaviors
      • selecting multiple behaviors
      • local values, constructors
      • object-oriented style programming
Apr-13 - Apr-19
Apr-20 - Apr-26
  • Assignments:
  • Mon, Apr 20 Lecture: Interfaces
    • Topics:
      • Designing an interface
    • Preparation:
      • ๐Ÿ“– Ch. 25, "Animated Problem Solving"
  • Wed, Apr 22 Lecture: Introduction to Distributed Programming
    • Topics:
      • Protocol diagrams and lifeline diagrams
      • Understanding the 2htdp/universe model
      • An example distributed programming application
      • ping, IP addresses, shell prompt
      • 2htdp/universe
    • Preparation:
      • ๐Ÿ“– Ch. 26, "Animated Problem Solving"
Apr-27 - May-03
  • Assignments:
    • Distributed Multiplayer tug-of-war, developed in class: Assigned on Mon, Apr 27
  • Mon, Apr 27 Lecture: Universe, distributed programming, and you
    • Topics:
      • What is a distributed program?
      • Distributed programming model
      • Design recipe for distributed programming
      • Preparing to make a game distributed
    • Preparation:
      • ๐Ÿ“– Ch. 27, "Animated Problem Solving"
    • Extra Resources:
  • Wed, Apr 29 Lecture: Aliens Attack v.7
May-04 - May-10
  • Assignments:
  • Mon, May 04 Lecture: Aliens Attack v.8
    • Topics:
      • Aliens Attack v.8
    • Preparation:
      • ๐Ÿ“– Ch. 28, "Animated Problem Solving"