CSC108H (StG, Summer 2011): Lectures


This page will contain notes from lecture, mainly from code developed during lecture, as well as any slides we use. We will try to post these notes Tuesday before each lecture. It is not mandatory, (but is encouraged) to look at the lecture notes before lecture.

We post these materials to help you focus on thinking and participating in class without worrying about copying down every little detail. But a lot happens in lecture that will not be represented in these posted materials, and we urge you to augment them with your own personal notes. Research shows that students who take and study from their own notes consistently do better on tests than those who simply study from supplied notes. If you miss class, it would be a good idea to get notes from someone who was there.


Readings for each week are also listed below. You are responsible for keeping up with these during the term. Unlike lecture notes, the readings are mandatory. Note that some of the topics may shift around a bit, depending on how we progress.

Date Readings Slides Code
  • May 19
  • chapter 1 (Introduction to Python)
  • May 26
  • chapter 2 (Python basics)
  • chapter 6 (Booleans)
  • The first shell where we played with booleans.
  • The second shell where we played with functions a bit.
  • The original plan for the shell.
  • This is the original version of namespaces. We modified it by first reusing the variablename x.
  • Then we modified it to have f call g inside of it.
  • Then we modified it to use a global variable.
  • Then we modified it to break by using a global variable in a local namespace.
  • In all of these, we went through them roughly line by line on the board to see what happened to the memory.
  • June 2
  • chapter 3 (Strings)
  • chapter 4 (Modules)
  • chapter 7 (Loops)
  • June 9
  • chapter 5 (Lists)
  • June 16
  • chapter 9 (Dictionaries)
  • June 23
  • chapter 8 (Files)
  • July 7th
  • Chapter 13 (Classes)
  • July 14th
  • Chapter 4.5 (Nose), Chapter 12.3-12.4 (Debugging)
  • July 21th
  • None. Chapter 14 is an advanced look at GUIs using Tkinter. It also introduces anonymous functions. We will not be covering either of these.
  • July 28th
  • Chapter 11.3-11.4,(Sorting)
  • No shell this week, because we used pseudocode and the board.
  • August 4th
  • Chapter 10 is somewhat tangentially related.
  • August 4th
  • No reading.