Lectures

Click on a lecture to see the summary of that day, together with optional reading or viewing. You can also download the slides and any demo code.

Because of recent changes in venue, we are not able record lectures in this course. You are expected to attend in order to learn the material. You may review the lesson videos recorded during COVID for supplemental instruction.

Conditionals and Program Flow

Conditionals and Program Flow

This lecture references Lesson 9.

In this lecture, we demonstrate the difference between program structure and program flow. We also introduce our first control structure: the conditional.    More ›

September 13, 2022 handout slides demos

Specifications and Testing

Specifications and Testing

This lecture references Lessons 7 and 8.

In this lecture we introduce the concept of testing as a formal process. This material forms the basis of software engineering.    More ›

September 8, 2022 handout slides demos

Strings

Strings

This lecture references Lesson 6.

In this lecture we introduce how to process text in Python. These techniques will be used in the first assignment.    More ›

September 6, 2022 handout slides demos

User-Defined Functions

User-Defined Functions

This lecture references Lesson 5.

In this lecture we introduce how to define our own functions. We also develop a mental model for executing functions.    More ›

September 1, 2022 handout slides demos

Functions and Modules

Functions and Modules

This lecture references Lesson 3 and videos 4.5-4.4 of Lesson 4.

In this class we talk about how to import optional features into Python. We also show how to make program files we can run.    More ›

August 30, 2022 handout slides demos