Lecture Video Archive

ICS-33: Intermediate Programming



This web page already shows links (S-21) for the Zoom lectures that I recorded for ICS-33 in Spring 2021. Generally, these lectures will be similar to the ones that I will give this quarter, so you can view them to preview upcoming lectures. But do so carefully: announcements and other information from these lectures might not be the same as this quarter.

I will also add links (F-21) for the lectures as I give them this quarter, typically posting them the afternoon that I deliver the lecture. These links will contain an audio recording of the lectures, also capturing what I show on the omcputer (but not what I show on the document projector).

I will leave all these lectures online for the entire quarter, so you can preview or review them at your lesuire. I strongly suggest that you not get behind viewing these lectures, if you are not attending class. Of course, you can always view them at a high(er) speed or go backward and review them more slowly, if any material was unclear.


Week # DayDate Lecture Topic
Spring 2021
Fall 2021
Week 0 Friday 9/24 Starting the Course
S-21
F-21
(silent for 12 min)
Week 1 Monday9/27 Python Review I
S-21
F-21
Wednesday9/29 Python Review II
S-21
F-21
Friday10/1 Python Review III
S-21
F-21
Week 2 Monday10/4 EBNF: A Notion to Describe Syntax
S-21
F-21
Wednesday10/6 Regular Expressions: Patterns
S-21
F-21
Friday10/8 Regular Expressions: Python's re Module
S-21
F-21
Week 3 Monday10/11 Classes
S-21
F-21
Wednesday10/13 Class Operator Overloading I (start 5 mins late)
S-21
F-21
Friday10/15 Class Operator Overloading II
S-21
F-21
Week 4 Monday10/18 Iterator Protocol and Examples of Use
S-21
F-21
Wednesday10/20 Iterators in Classes defining iter and next
S-21
F-21
Friday10/22 Generators (and yield): Functions that Act Like Iterators
S-21
F-21
Week 5 Monday10/25 Recursive Functions
S-21
F-21
Wednesday10/27 Functional Programming
S-21
F-21
Friday10/29 Decorators for Calling Functions
S-21
F-21
Week 6 Monday11/1 Introspection (Dispatching and Stack Crawling)
S-21
(audio failed)
Wednesday11/3 Linked Lists
S-21
F-21
Friday11/5 Binary (Search) Trees and Expression Trees
S-21
F-21
Week 7 Monday11/8 Inheritance I: Single
S-21
F-21
Wednesday11/10 Inheritance II: Multiple
S-21
F-21
Friday11/12 Inheritance III: Examples
S-21
F-21
Week 8 Monday11/15 Analysis of Algorithms and Complexity Classes
S-21
F-21
Wednesday11/17 The Complexity of Python Operators/Functions
S-21
F-21
Friday11/19 Advanced Class/Inheritance
S-21
(audio malfunction)
Week 9 Monday11/22 Empirical Efficiency (Profiling)
S-21
F21
Wednesday11/24 Testing Software (UnitTest)
S-21
F-21
Friday11/26 Holiday No recording
Week 10 Monday11/29 The Python Virtual Machine [Code]
S-21
F-21
Wednesday12/1 Static Typing + Computability
S-21
F-21
Friday12/3 Course Wrapup + Review
S-21
F-21