| Date  | Topic and/or Event | Readings | 
| January 17 | Lecture 1: Introduction and Overview | BDM Ch. 1; Topic Notes: Introduction and Overview | 
| January 18 | Programming Project 0: An Introduction to Java and Objectdraw Out (recommended to start during lab meetings) |  | 
| January 19 | Lecture 2: Java and Objectdraw Basics | BDM Ch. 2; Topic Notes: Java and Objectdraw Basics | 
| January 24 | Lecture 3: Conditionals and Numbers | BDM Ch. 3, Ch 4; Topic Notes: Conditionals and Numbers | 
| January 25 | Lab 1: Sorting Laundry; Project 0 Due |  | 
| January 26 | Lecture 4: Working with Colors; Dragging Objects; Programming Project 1: Random Flower Out |  | 
| January 31 | Lecture 5: Dragging Objects; Centering Objects |  | 
| February 1 | Lab 2: Advanced Laundry Sorting |  | 
| February 2 | Lecture 6: More Conditionals; Numeric Data Types | Topic Notes: Defining Classes | 
| February 7 | Lecture 7: Defining Classes | BDM Ch. 6 | 
| February 8 | Lab 3: SkiBall; Project 1 Due |  | 
| February 9 | Lecture 8: Defining Classes |  | 
| February 14 | Lecture 9: More Class Definitions; Programming Project 2: Getting Warmer Out |  | 
| February 15 | Lab 4: Spring Flowers |  | 
| February 16 | Lecture 10: Guest Lecture: More Classes and Review |  | 
| February 21 | Lecture 11: Repetition | BDM Ch. 7; Topic Notes: Active Objects | 
| February 22 | Lab 5: Snowmen |  | 
| February 23 | Lecture 12: Review |  | 
| February 27 | Evening Exam: 7 or 9 PM, RB 328 |  | 
| February 28 | Lecture 13: Active Objects |  | 
| February 29 | No Lab: SIGCSE 2012 Conference | 
| March 1 | No Class: SIGCSE 2012 Conference |  | 
| March 6 | Lecture 14: More Complex Active Objects |  | 
| March 7 | Lab 6: A Loopy Drawing |  | 
| March 8 | Lecture 15: Other Loops |  | 
| March 12-16 | Spring Break |  | 
| March 20 | Lecture 16: More Loops and Active Objects; Programming Project 3: Scary Spiders Out |  | 
| March 21 | Lab 7: Blowing Bubbles |  | 
| March 22 | Lecture 17: for Loops; Introduction to ArrayLists | Topic Notes: Collections | 
| March 27 | Lecture 18: More ArrayLists |  | 
| March 28 | Lab 8: Drawing Dots |  | 
| March 29 | Lecture 19: Exam Review |  | 
| April 2 | Evening Exam: 7 or 9 PM, RB 202 |  | 
| April 3 | Lecture 20: Arrays; Project 3 Due |  | 
| April 4 | No Lab: Easter Break/Exam Week |  | 
| April 5 | No Class: Easter Break |  | 
| April 10 | Lecture 21: More Arrays; 2D Arrays | Topic Notes: Two Dimensional Arrays; BDM Ch. 13, Ch. 14 | 
| April 11 | Lab 9: Simon | 
| April 12 | Lecture 22: More 2D Arrays |  | 
| April 17 | Lecture 23: Strings; Programming Project 4: Final Project Out | BDM Ch. 16; Topic Notes: Strings | 
| April 18 | Lab 10: Terminal Drawing Program; |  | 
| April 19 | Lecture 24: More Strings and Characters |  | 
| April 24 | Lecture 25: More Strings and File I/O; Searching | BDM Ch. 20; Topic Notes: I/O; Topic Notes: Searching and Sorting | 
| April 25 | No new lab: meet to continue work on Lab 10, Final Project |  | 
| April 26 | Lecture 26: Sorting; Concurrency; Wrapup | Topic Notes: Concurrency | 
| April 30 | Final Project Due, 4:00 PM |  | 
| May 1 or 2 | Review at times TBD |  | 
| May 3 | Final Exam, 11:00-1:00, ARC 1,3 |  | 
|  |