Schedule
A tentative schedule below (subject to change as we progress).
Date Topic Reading Items due week 1 (Tue: 08/29)
Introduction to Computer Science
Lecture 1 slide
Lab 1 (released)
Lab 1 (released on 08/29)
week 1 (Thu: 08/31)
Variables, expression, and statements
Lecture 2 slide
Reading: Chapter 1
Reading: Chapter 2
week 2 (Tue: 09/05)
Functions (part 1)
Lecture 3 slide
Reading: Chapter 3
week 2 (Thu: 09/07)
Functions (part 2)
Lecture 4 slide
Reading: Chapter 3
Lab 1 (due by 09/07)
week 3 (Tue: 09/12)
Import a module
Variable scope resolution (local vs global)
Content quiz 1 review
Lab 2 (released)
Lecture 5 slide
Lab 2 (released on 09/12)
week 3 (Thu: 09/14)
Graphical interface (part 1)
Content Quiz 1
Lecture 6 slide
Reading: Graphics
Content Quiz 1
week 4 (Tue: 09/19)
Graphical interface (part 2)
Lecture 7 slide
Reading: Graphics
week 4 (Thu: 09/21)
Boolean expression
Conditionals
Lecture 8 slide
Lab 3 (released)
Reading: Chapter 5
Lab 2 (due by 09/21)
week 5 (Tue: 09/26)
Random numbers
Conditionals (continued)
Sequence: String
Lecture 9 slide
Reading: Chapter 5
Reading: Chapter 8
week 5 (Thu: 09/28)
Sequence: List
Content Quiz 2
Lecture 10 slide
Reading: Chapter 10
Content Quiz 2 (due by 09/28)
Lab 3 (due by 09/29)
week 6 (Tue: 10/03)
Loop (while loop)
Loop (for loop)
Lecture 11 slide
Reading: Chapter 7
week 6 (Thu: 10/05)
Loop (for loop)
Lecture 12 slide
Reading: Chapter 7
Reading: Chapter 8
week 7 (Tue: 10/10)
Loop (value for loop vs index for loop)
Loop (nested for loop)
Nested Loop Visualization
Lecture 13 slide
Assignment 1 (released)
week 7 (Thu: 10/12)
loop (for loop) review
Reading: Chapter 10
week 8 (Tue: 10/17)
Fall break (no class)
week 8 (Tue: 10/19)
Assignment 2 (discussion)
String
Lecture 15 slide
Reading: Chapter 8
week 9 (Thu: 10/24)
String formating
Content Quiz 3
Assignment 2 (released)
Lecture 16 slide
Reading: Chapter 9
Content Quiz 3 (due by 10/24)
week 9 (Tue: 10/26)
String formating (continued)
List operations (add and update)
Lecture 17a slide
Lecture 17b slide
Reading: Chapter 10
week 10 (Tue: 10/31)
List operations (add and update)
List operations (remove)
Lecture 17b slide
Lecture 18a slide
Reading: Chapter 10
week 10 (Thu: 11/02)
List of lists
Lecture 18b slide
Content Quiz 4
Reading: Chapter 10
Assignment 2 (due by 11/02)week 11 (Thu: 11/07)
Final project discussion + proposal
List of lists (continued)
Dictionary
Lecture slide 19a
Lecture slide 19b
Lecture slide 20
Reading: Chapter 11
week 11 (Tue: 11/09)
Dictionary (add, update, and remove operations)
Iterating through a dictionary
Lecture 21 slide
Reading: Chapter 11
week 12 (Thu: 11/14)
Assignment 3 (released)
Assignment 3 (discussion)
Reading:
Final project proposal (due by 11/14)
week 12 (Tue: 11/16)
Dictionary (wrap up)
Tuples
Lecture 22 slide
Content Quiz 5
Reading: Chapter 11
Reading: Chapter 12
Content Quiz 5 (due by 11/16)
week 13 (Thu: 11/21)
File I/O (read, write and append operations)
Lecture 23 slide
Reading: Chapter 14
week 13 (Thu: 11/23)
Thanksgiving break (no class)
Assignment 3 (due by 11/23)
week 14 (Tue: 11/28)
Classes and objects
Lecture 24 slide
Reading: Chapter 15
Reading: Chapter 16
Reading: Chapter 17
week 14 (Thu: 11/30)
Accessing Object Attributes and Methods
Lecture 25 slide
Reading: Chapter 18
week 15 (Tue: 12/05)
Course Evaluation
Class/Object: Scope and Visibility
Class/Object: Inheritance
Lecture 26 slide
Content Quiz 6
Reading: Chapter 21
Content Quiz 6 (due by 12/05)
week 15 (Thu: 12/07)
Errors, Exceptions and try-except blocks
Project presentation (Session I)
Week 16 (Tue: 12/12)
Final project code + slides
Assignment 4 (due by 12/12)
Final Project (due by 12/12)