Week 1
Introduction to Linux, and a little Python.
- Making introductions.
- Due by Wednesday, 9/12.
- Getting to know Linux.
- Do this by Wednesday, 9/12, but don't hand anything in.
- Reading: Zelle, Chapters 1-3
- Do this by Friday, 9/14. Zelle's book is best read while you have
access to a Python interpreter, so you can experiment with the examples
given in the book.
Week 2
Python basics.
- Playing with strings.
- Due by 11:59PM Monday, 9/17.
- Reading: Zelle, Chapter 4
- By Monday, 9/17.
- Reading: Zelle, Chapters 6 and 7
- By Wednesday, 9/19.
- Triangular numbers.
- Due by 11:10AM Monday, 9/24.
- Word statistics.
- Due by 11:10AM Wednesday, 9/26.
Week 3
Using libraries and objects.
- Reading: Zelle, Chapters 5 and 8
- By Friday, 9/28. You might find Chapter 8 useful sooner, though.
- Lab: Playing With Graphics
- Wednesday, 9/26, in CMC306. Faces due 11:10AM Monday, 10/1.
Week 4
More objects, more functions.
- Reading: Zelle, Chapter 10
- By Friday, 10/5.
Week 5
Data representation and an in-class exam.
- In-class exam, closed book.
- Wednesday, 10/10, 11:10AM-12:20PM, CMC209. This exam will cover concepts from class,
the textbook (Chapters 1-8 and 10), the assignments you've done, the sample programs
we've looked at in class (see the left-hand margin of this page), and the graphics lab.
Week 6
Break, plus recursion.
- A graphical city.
- Due by 11:10AM Wednesday, 10/17.
- Reading: Zelle, Chapter 13
- By Friday, 10/19.
Week 7
Algorithms and data representation.
- Some recursive functions.
- Due by 11:59PM Wednesday, 10/24.
- Reading: Wikipedia articles on
Two's Complement,
ASCII, and
Unicode.
- By Friday, 10/26.
Week 8
Takehome exam, image processing.
- Binary arithmetic.
- Due on paper at 11:10AM Monday, 10/29.
- Takehome exam.
- Due by noon Friday, November 2.
Weeks 9, 10, and finals
Final project, plus miscellaneous topics in class
- Final project.
- Due in two parts. Project description on paper at noon
Friday, Nov 9, and final code and documentation by 5:00 PM
Monday, Nov 19.