Approximate schedule, subject to change. The homework assignments and labs will be added weekly, usually on Thursday evening. The assigned readings are direct links to the pdf versions of the chapters. They should, ideally, be read before the corresponding class. You are responsible for keeping up with the reading and for all material covered in class.

Tentative date for the midterm exam: February 24.

The week number contains a hyperlink to an overview of that week's course materials; a rundown of the topics, lecture notes (if any) lab, homework and supplemental “reading” information. Bold Dates signify no class for that day.

Week Topics of the Week Mon Wed Fri DCIC Readings and Assignments
-1- Introduction 1/16
Martin Luther King Jr. Day
1/18
1/20
Lab 1: Getting started
Read the syllabus (sidebar)
Read How to Succeed (sidebar)
3 Getting Started
4 Naming Values
-2- Names and evaluation 1/23
Expressions, values, and names
1/25
Evaluating functions and conditionals
1/27
Lab 2: Conditionals and reading code
Read 5 From Repeated Expressions to Functions
Read 6 Conditionals and Booleans
Read Vassar CS student integrity guide
Assignment 1
-3- Tabular data 1/30
Tables
2/1
Working with tables
2/3
Lab 3: Candy analysis
Read 7 Introduction to Tabular Data
Assignment 2
-4- Data processing 2/6
Designing programs for tables
2/8
Tables and lists
2/10
Lab 4: Squirrels
Read 8 Processing Tables
Read 9 From Tables to Lists
Assignment 3
-5- Recursive data 2/13
Data definitions
2/15
Trees
2/17
Lab 5: Call the plumber
Read 11 Introduction to Structured Data
Read 13 Recursive Data
Read 14 Trees
Assignment 4
-6- Recursive programs 2/20
Further recursion
2/22
Exam 1 review
2/24
Exam 1
-7- Simulation and interaction 2/27
Generating fractals
3/1
Reactive programs
3/3
Lab 6: 99 Luftballons
Read 16 Interactive games as reactive systems
X Spring Break
No class
3/6
No class
3/8
No class
3/10
No class
X Spring Break
No class
3/13
No class
3/15
No class
3/17
No class
-8- Python 3/20
Python and notebooks
3/22
Slicing and list comprehensions
3/24
Lab 7: Python practice

Read 28 From Pyret to Python through Section 28.6.1
Assignment 5
-9- Working with real data 3/27
Tables in Python
3/29
Data sanitizing
3/31
Lab 8: Cleaning table data

Assignment 6
-10- Exploration and design 4/3
Visualization notebook And Intro to Cholera
4/5
Tables and Prediction
4/7
Mini-project
Yet one more source of csv files!
-11- Changes 4/10
Iteration and mutation
4/12
Dataclasses
4/14
Lab 9: Toast!
Read 28 From Pyret to Python from Section 28.7 to Section 28.8.3
-12- Memory 4/17
Memory
4/19
More... memory
4/21
Lab 10: Vote for Python

Read 29 Modifying Structured Data
Read 30 Modifying Variables
Read 31 Revisiting Lists and Variables
Assignment 7
-13- Dictionaries 4/24
Dictionaries
4/26
JSON and Web APIs
4/28
Lab 11: Zen And The Art Of Motorcycle Maintenance, err, Gathering Data

Read 32 Hashtables and Dictionaries
Assignment 8, Last One!
-14- Short Presentation 5/1
Computer Science I
CEQs
Exam 2 review will be scheduled during study week
5/3
No class
5/5
No class
Final Exam May 11, 5 pm

|