Calendar of Lectures, Labs, & Workshops

CSC 161: The Art of Programming

date session topic assignments
Sept 2



1 Why study computer science using Python?


Read Zelle Chapter 1

Assignment #1: Using IDLE. Due 9/9, turn in hardcopy in class.

Sept 9 lecture

2 An Overview of the Elements of Python


Read Zelle Chapter 2
Sept 13,14,15 workshop Origami algorithms  
Sept 14 lecture

3 Programming with Numbers


Read Zelle Chapter 3

Pre-read Zelle 11.1-11.2

Sept 15,17 lab

Kepler & Newton

Must attend Sept 15

Due by Blackboard upload 10:00am Saturday 20 Sept
Sept 16 lecture

4 Numeric Methods, or Two Recipes for P



Read Zelle 11.1-11.2

Pre-read Zelle Chapter 4


Sept 20,21,22 workshop RNA Secondary Structure Prediction  
Sept 21 lecture 5 Strings & Sequences

Read Zelle Chapter 4

Pre-read Zelle 11.6

Sept 22,24 lab RNA Secondary Structure Prediction Due by Blackboard upload 10:00am Saturday 26 Sept
Sept 23 lecture

6 Files and Dictionaries

Read Zelle 11.6

Pre-read Zelle Chapter 5

Sept 27,28,29 workshop Practice with Python  
Sept 28
(Yom Kippur)

7 Top-Down Design

pdf slides (2 per page)

Sept 29,Oct 1 lab

Design Lab

Due on Sat 10 October
Sept 30 lecture 8 Design Patterns

Pre-Read Zelle Chapter 5 before next class!

Assignment 5: Written Exercises. Due in workshop Oct 11-13.

Oct 4,5,6 NO WORKSHOP    
Oct 5 NO CLASS    
Oct 6,8 lab Continue with Design Lab  
Oct 7 lecture Lecture cancelled due to illness. Read Zelle sections 5.1-5.3 (page 123-129), while at computer running IDLE. Type the code examples in the book into the Shell window. Experiment with drawing different points, lines, rectangles, and ovals. Before you begin, download the following Python library into the default Python directory of your computer: See help pages for more information.
Oct 11,12,13 workshop Art, Math, and Drama  
Oct 12
(Columbus Day)
lecture 9 Using Graphics Objects  
Oct 13,15 lab Assignment 6: Graphics Part I: Due Oct 24; Part II: Due Oct 31
Oct 14 lecture 10 Animation  
Oct 18,19,20 workshop Animation  
Oct 19 lecture

11 Animation II: Revenge of the Clones

Example Python programs:

Midterm study guide
Oct 20,22 lab Graphics assignment continued Graphics Part I: Due Oct 24
Oct 25,26,27 workshop Workshop 6: Working with Functions  
Oct 26
(Guest Lecture)
lecture 12 Introduction to Functions

Example Python programs:

Oct 27,29 lab Graphics assignment continued Graphics Part II: Due Oct 31
Oct 28
(Guest Lecture)
lecture 13 Functions & Recursion  
Nov 1,2,3 workshop Workshop 7: Recursive Problem Solving  
Nov 2 lecture 14 Working with Lists  
Nov 3,5 lab Assignment 7: Literary Style Analysis Assignment 7 due Sat Nov 14th 10:00am
Nov 4 lecture 15 Working with Dictionaries  
Nov 8,9,10 workshop Workshop 8: Measuring Literary Style  
Nov 9 lecture 16 Working with Files  
Nov 10,12 lab Assignment 7: Literary Style Analysis, continued Assignment 7 due Sat Nov 14th 10:00am
Nov 11 lecture 17 Working with Sound



Nov 15,16,17 workshop Workshop 9:  
Nov 16 lecture 18 Computer Music  
Nov 17,19 lab Assignment 8: Sound Lab Assignment 8 due Sat Dec 5th 10:00am
Nov 18 lecture 19 Simulation
Nov 22,23,24 workshop Workshop 10: EMR Simulation  
Nov 23 lecture 20 Web Programming with Python I

Topics: urllib, the structure of HTML documents, and HTMLParser

Nov 24
(No lab Nov 26)
lab Assignment 8: Sound Lab, continued  
Nov 25 NO CLASS    
Nov 29,30,Dec 1 NO WORKSHOP    
Nov 30 lecture 21 Web Programming with Python II

Topics: Defining objects. Handling error conditions. Building a spider.

Python file:

Dec 1,3 lab Continue with Soundlab  
Dec 2 lecture 22 Next steps in computer science  
Dec 6,7,8 workshop

Workshop 11: Course Review

Practice exercises given out
Dec 7 lecture 23 Course Review: 60 Questions  
Dec 8, 10 lab No formal lab; equipment available for working on practice problems  
Dec 9 NO CLASS! Enjoy study week!  
Dec 17 FINAL EXAM 8:30am - 10:30am