COMP 204 Fall 2019: Lecture schedule and material

Note: Slides may be updated up to a few hours before the lecture.
Lecture Date Topic Material
1 04-09 Introduction No slides; presentation of course syllabus.
2 06-09 What is a computer: CPU, RAM, storage, communication. Binary numbers, instructions Slides (updated on Sept. 6 2019)
3 9-09 Python programming: What is code? How write code? How to run it? Basic programs Slides (updated on Sept. 8 2019)
4 11-09 Python programming: variables and types. Program execution. Slides (updated on Sept. 11 2019).
Python source files.
5 13-09 Python programming: Control flow: conditionals, boolean expressions Slides (updated on Sept. 13 2019).
Python source files.
6 16-09 Python programming: While loops Slides (updated on Sept. 16 2019). Python source files.
7 18-09 Python programming: More loops, nested loops Slides (updated on Sept. 18 2019). Python source files.
8 20-09 Testing and debugging code; Nested loops Slides (updated on Sept 23 2019). Python source files.
9 23-09 Python programming: Lists Slides (updated on Sept. 25 2019). Python source files.
10 25-09 Python programming: Control flow: for loops Slides (from 2018). Python source files.
11 27-09 Putting it together: Nested loops and conditionals Programming example done in class (Sept. 27 2019). Other examples (from 2018). Python source files.
12 30-09 Python programming: Functions I Slides (updated on Sept. 29 2019). Python source files.
13 2-10 Python programming: Functions II - arguments, scope Slides (updated on Sept. 29 2019). Python source files.
14 4-10 Program execution: Dictionaries Slides (updated on Oct. 4 2019). Python source files.
15 7-10 Python programming: Dictionaries and sets Slides (from 2018).
16 9-10 Python programming: Putting it together Slides (updated on Oct. 9 2019). Python source files.
17 11-10 Review Session Slides (from 2018).. Python source files.
15-10 Midterm exam
18 16-10 Exceptions Slides (updated on Oct 16 2019).
19 18-10 Exceptions (continued) and Sets Slides (updated on Oct. 18 2019).
20 21-10 Enumerate,zip, and comprehensions Slides (updated on Oct. 20 2019).. Python source files.
20 21-10 Algorithm design: Linear and Binary Search Slides (fupdated on Oct. 23 2019).. Python source files.
21 23-10 Algorithm design: Selection and Insert Sort Slides (updated on Oct 25 2019).. Python source files.
22 25-10 Python programming: File IO Slides (updated on Oct. 29 2019).. Python source files.
23 28-10 Using libraries: Data visualization with MatPlotLib (part one) Slides (updated on Oct 30 2019).Python source files.
24 30-10 A simulation program Slides (updated on Nov. 1 2019). Python source files.
26 4-11 Introduction to object-oriented programming Slides (updated on Nov. 3 2019). Python source files.
27 6-11 Object-oriented programming - Part II Slides (updated on Nov. 5 2019). Python source files.
28 8-11 Object-oriented programming: inheritance Slides (updated on Nov 8 2019). Python source files.
29 11-11 Introduction to image analysis with scikit-image (part one) Slides (updated on Nov. 11 2019). Python source files.
33 13-11 Introduction to image analysis with scikit-image (part two) Slides (updated on Nov. 11 2019). Python source files.
34 15-11 Introduction to image analysis with scikit-image (part three) Slides (updated on Nov. 15 2019). Python source files.
30 13-11 Machine learning - introduction Slides (updated on Nov. 18 2019).
31 15-11 Machine learning (part 2) Slides (updated on Nov 20 2019)
32 15-11 Machine learning (part 3) Slides (updated on Nov 22 2019) Python source files.
32 15-11 Using Python modules, and iPython Jupyter Notebooks Slides (updated on Nov 25 2019) Python source files.
35 25-11 Optional topic 1: Recursion Slides unavailable.
36 27-11 Optional topic 2: Students' choice topic Slides unavailable.
37 29-11 Review session #1 Slides (from 2018).
38 2-12 Review session #2
39 3-12 Review session #3

Additional matieral we will not cover in the course but you may find useful as a programmer.
OPTIONAL TOPIC Python programming: Internet IO Slides
OPTIONAL TOPIC The Standard Library Slides
OPTIONAL TOPIC Advanced Python: Generators, Decorators, and Context Managers Slides
OPTIONAL TOPIC Regular expressions Slides