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 | 
| 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)  | 
	|||||