Here is this semester's tentative schedule; we will update it as the semester progresses.
Please note that lecture notes are provided as a supplement, and are NOT a substitute for attending lecture. In particular, these are not guaranteed, so expect technical difficulties to prevent them from being posted at least a few times in the semester, and plan accordingly to either take notes or get them from a friend if necessary.
Date Topic Reading Lecture Notes Code or Lab assignment Tuesday, Jan. 17 Syllabus, intro to programming Chapter 1 of textbook Lecture Notes Wednesday, Jan. 18 Objects Chapter 1 of textbook Lecture Notes Friday, Jan. 20 CS1Graphics package Chapter 3 of textbook Lecture Notes cs1graphics page Monday, Jan. 23 More CS1graphics Chapter 3 Lecture Notes Tuesday, Jan. 24 Finish cs1graphics Chapter 3 Lecture Notes Wednesday, Jan. 25 Numbers and lists Chapter 2 Lecture Notes Friday, Jan. 27 Strings and tuples Chapter 2 Lecture Notes Monday, Jan. 30 Intput and Output Chapter 2 Lecture Notes Tuesday, Jan. 31 Chapter 2 recap and practice Chapter 2 Lecture Notes Wednesday, Feb. 1 For loops Chapter 4.1 Lecture Notes Friday, Feb. 3 For loops
If statementsChapter 4.2,4.4 Lecture Notes Monday, Feb. 6 If statements Chapter 4.4 Lecture Notes Tuesday, Feb. 7 While loops Chapter 5.1 Lecture Notes Wednesday, Feb. 8 While loops
Continue and breakChapter 5.1 Lecture Notes Friday, Feb. 10 Functions Chapter 5.2 Lecture Notes Monday, Feb. 13 More on functions Chapter 5.2 Lecture Notes Tuesday, Feb. 14 Type Checking Chapter 5.5 Lecture Notes Wednesday, Feb. 15 Exceptions Chapter 5.5 Lecture Notes Friday, Feb. 17 Classes: a first example Chapter 6.1 Lecture Notes Monday, Feb. 20 More classes Chapter 6.1-6.2 Lecture Notes Tuesday, Feb. 21 Classes Chapter 6.2 Lecture Notes Wednesday, Feb. 22 Fraction class Chapter 6.4 Lecture Notes Friday, Feb. 24 In class review Chapters 1-5 Monday, Feb. 27 Midterm 1 Tuesday, Feb. 28 Docstrings Chapter 7.5 Lecture Notes Wednesday, Feb. 29 Unit testing Chapter 7.7 Lecture Notes Friday, March 2 Review of midterm
Unit testingChapter 7.7 Monday, March 5 String formatting Chapter 8.1-8.2 Lecture Notes Tuesday, March 6 Reading from a file Chapter 8.3 Lecture Notes Wednesday, March 7 Writing to a file Chapter 8.3-8.4 Lecture Notes Friday, March 9 Modules Friday, March 9 Lecture Notes Monday, March 19 Inheritance Chapter 9 Lecture Notes Tuesday, March 20 Inheritance Chapter 9 Lecture Notes Wednesday, March 21 When NOT to use inheritance Chapter 9.3 Lecture Notes Friday, March 23 Inheritance in cs1graphics Chapter 9.4-9.5 Lecture Notes Monday, March 26 Memory management and objects Chapter 10 Lecture Notes Tuesday, March 27 Deep and shallow copies Chapter 10 Lecture Notes Wednesday, March 28 Objects and functions
RecursionChapter 10.3, 11 On the board - no notes Friday, March 30 Recursion: Bullseye class Chapter 11.1 Lecture Notes Monday, April 2 Recursion Chapter 11 Lecture Notes Tuesday, April 3 More recursion Chapter 11 See OurList.py Wednesday, April 4 Recursion: Sorting Chapter 11 On board Tuesday, April 10 Review for midterm 2 Wednesday, April 11 Midterm 2 Friday, April 13 Dictionaries Chapter 12 Lecture Notes Monday, April 16 GUIs
TkinterOnline referece Lecture Notes Tuesday, April 17 Review of midterm 2 Wednesday, April 18 Tkinter Examples in text format Lecture Notes Friday, April 20 Tkinter Examples in text format Lecture Notes Monday, April 23 Tkinter Lecture Notes Tuesday, April 24 Networking - using sockets Chapter 16 Lecture Notes Wednesday, April 25 Work day Friday, April 27 Networking Chapter 16 Lecture Notes Math Server Example