Course Schedule - Fall 2023

(subject to change - monitor Piazza and in class announcements for adjustments)
IMPORTANT POLICY ABOUT THANKSGIVING BREAK: There is a lab exam on Tues. Nov. 22, the day before Thanksgiving break. Do NOT make plans to travel before your classes end on that Tuesday. No early exams will be allowed, and if you want to travel early, you risk getting a 0 on the lab exam.
 
IMPORTANT POLICY ABOUT FINAL EXAMS: Do NOT make travel plans until you have the official final exam schedule, and you know definitively when your last final is. No early exams will be given, and students with conflicts or more than 3 exams in 25 hours might need to take a final on the official makeup day (Mon. Dec 18). Travel cost or a parent booking a trip for you is NOT a valid excuse for an alternate final. NO EXCEPTIONS WILL BE MADE.
Slides and code examples from each lecture will be posted on Canvas after class. You are expected to take notes during class. Click HERE for tips from Academic Development about effective note taking in class. These skills will help you when you're out in industry or graduate school. Click HERE for more reasons why handwritten note taking may help you learn more in this class.

WEEK DATES LECTURES RECITATIONS (LABS) DELIVERABLES
1 8/28-9/1 Lecture 1: Basics
Lecture 2: More Basics
Lecture 3: Variables
Lab Week 1: Tues. 8/29 Deliverable 1: due Sat. 9/2
2 9/4-9/8 Monday, Sep. 4 - No class (Labor Day)
Lecture 4: Constraints
Lecture 5: Interaction
Lab Week 2: Tues. 9/5 Deliverable 2: due Sat. 9/9
3 9/11-9/15 Lecture 6: Transformations
Lecture 7: More Interacction
Lecture 8: Loops
Lab Week 3: Tues. 9/12 Deliverable 3: due Sat. 9/16
4 9/18-9/22 Lecture 9: More Loops
Lecture 10: Functions
Lecture 11: More Functions
Lab Week 4: Tues. 9/19 Deliverable 4: due Sat. 9/23
5 9/25-9/29 Lecture 12: Polar Coordinates
Lecture 13: Arrays
Written Exam 1: Fri. 9/29
Lab Week 5: Tues. 9/26 Deliverable 5: due SUN. 10/1
6 10/2-10/6 Lecture 14: More Arrays
Lecture 15: Randomness
Lecture 16: Objects
Lab Week 6: Tues. 10/3 Deliverable 6: due Sat. 10/7
7 10/9-10/13 Lecture 17: More Objects
Lecture 18: Images
Lecture 19: Linear Search
Lab Exam 1: Tues. 10/10
Deliverable 7: due Sat. 10/14
  10/16-10/20 Monday, Oct. 16 - Friday, Oct. 20 - No classes (Fall Break) No lab No deliverable
8 10/23-10/27 Lecture 20: Particles
Lecture 21: Springs
Lecture 22: Mutual Interaction
Lab Week 8: Tues. 10/24 Deliverable 8: due Sat. 10/28
9 10/30-11/3 Lecture 23: Sound Basics
Lecture 24: More Sound
Written Exam 2: Fri., 11/3
Lab Week 9: Tues. 10/31 Deliverable 9: due SUN. 11/5
10 11/6-11/10 Lecture 25: Sound Processing
Lecture 26: Turtle Graphics
Lecture 27: More Turtle Graphics
No lab - Tues. 11/7 (Democracy Day)
Deliverable 10: due Sat. 11/11
11 11/13-11/17 Lecture 28: Program Development
Lecture 29: Platform Game
Lecture 30: Three Dimensions
Lab Week 11: Tues. 11/14 Deliverable 11: due Sat. 11/18
12 11/20-11/24 Lecture 31: Recursion
Wed. 11/22, Fri. 11/24 - No classes (Thanksgiving Break)
Lab Exam 2: Tue., Nov. 21
See IMPORTANT POLICY at the top of this page.
Deliverable 12: due WED. 11/22
13 11/27-12/1 Lecture 32: Recursive Searching
Lecture 33: Using Data Files
Lecture 34: Document Object Model (DOM)
Lab Week 13: Tues. 11/28 Deliverable 13: due Sat. 12/2
14 12/4-12/8 Lecture 35: More About DOM
Lecture 36: Snake Game
Lecture 37: Greatest Hits
Lab Week 14: Tues. 12/5 Deliverable 14: due FRI. 12/8
(Capstone Project)
  12/11-12/18 Final Exam: TBA (makeup day: Mon, Dec 18)
See IMPORTANT POLICY at the top of this page.