Except for exam dates, all schedule information is tentative and subject to change. This schedule is online at http://www.cs.sonoma.edu/cs115/S19/schedule.html. The online version will be updated throughout the semester with links to reading assignments, labs and projects.

  Before
Class
Tuesday
Class
During
Lab
Thursday
Class
After
Class
Due This Week
Week 1
Jan 21–Jan 27
Week 1
Reading
Intro to course and programming Lab 0 Variables, input, and output Week 1
Practice
Week 2
Jan 28–Feb 03
Week 2
Reading
Data types and operators Lab 1 Loops: Definite (for) loops Week 2
Practice
Tu 2 PM: Lab 0
Week 3
Feb 04–Feb 10
Week 3
Reading
Loops: Accumulation pattern
Graphics: drawing circles
Project 1 assigned
Lab 2 Conditionals: if, elif, else Week 3
Practice
Tu 2 PM: Lab 1
Week 4
Feb 11–Feb 17
Week 4
Reading
Conditionals: min, max
Graphics: drawing rectangles; handling mouse clicks
Nested loops
Lab 3
Quiz: Week 1--3 topics
Loops and Conditionals
Week 4
Practice
Tu 2 PM: Lab 2
Th 7 PM: Proj. 1-A demo
Week 5
Feb 18–Feb 24
Week 5
Reading
Review Lab 4 Exam 1 Week 5
Practice
Tu 2 PM: Lab 3
Th 7 PM: Proj. 1-B demo
Week 6
Feb 25–Mar 03
Week 6
Reading
Loops: Indefinite (while) loops Lab 5 Strings and Lists Week 6
Practice
Tu 2 PM: Lab 4
Th Sun 11:55 PM: Proj. 1 final code
Week 7
Mar 04–Mar 10
Week 7
Reading
Strings and Lists
Project 2 assigned
Lab 6
Quiz: Weeks 4--6 topics
Strings and Lists
Week 7
Practice
Tu 2 PM: Lab 5
Week 8
Mar 11–Mar 17
Week 8
Reading
Functions Lab 7 Functions Week 8
Practice
Tu 2 PM: Lab 6
Week 9
Mar 18–Mar 24
Spring Break
Week 10
Mar 25–Mar 31
Week 10
Reading
Functions
Nested Loops
Lab 8
Quiz: Weeks 7--9 topics
Functions
Week 10
Practice
Tu 2 PM: Lab 7
Th 7 PM: Proj. 2-A demo
Week 11
Apr 01–Apr 07
Week 11
Reading
Review

Exam 2

Week 11
Practice
Tu 2 PM: Lab 8
Week 12
Apr 08–Apr 14
Week 12
Reading
Searching Lab 9 Searching/Sorting Week 12
Practice
Mon 5 PM: Proj. 2-B demo
Week 13
Apr 15–Apr 21
Week 13
Reading
Sorting
Project 3 assigned
Lab 10
Quiz: Weeks 10--12 topics
Sorting
Week 13
Practice
Mon 11:55 PM: Proj. 2 final code
Tu 2 PM: Lab 9
Week 14
Apr 22–Apr 28
Week 14
Reading
Object-oriented programming (OOP) Lab 11 OOP Week 14
Practice
Tu 2 PM: Lab 10
Week 15
Apr 29–May 05
Week 15
Reading
OOP Lab 12
Quiz: Weeks 13--15 topics
OOP
Week 15
Practice
Tu 2 PM: Lab 11
Th 7 PM: Proj. 3-A demo
Week 16
May 06–May 12
Week 16
Reading
Algorithm Analysis Review Week 16
Practice
Tu 2 PM: Lab 12
Th 11:55 PM: Proj. 3 final code
Finals
May 13–May 19
EXAM 3
Sections 5–8: Tu. May 14, 11:00 AM–12:50 PM (Zinfandel 1000A)
Sections 1–4, 9–10: Th. May 16, 8:00 AM–9:50 AM (Zinfandel 1000A)