# CMPT140 Fall 2009 Course Schedule

This schedule, including homework/lab assignments, is subject to revision as the semester progresses. Check back frequently!
Labs are due at 10pm on Wed as specified, or on the following Thu, depending on which lab section you are in.
Please turn-in electronically to myCourses, and please ensure every file you upload has your name and the assignment number somewhere in the filename!
Unless otherwise specified, all readings and assignments are from the Python textbook.
Readings marked "M2" are from the supplemental Modula-2 text.
Problem numbers separated by commas or plus are a logical AND (i.e., do all the problems in the list); numbers separated by a slash (/) are a logical OR (i.e., choose one in the list).
1F 11 Sep ch1 Problem-solving, WADES, CSI Lab Tour
2M 14 Sep Working with People! Relationships in Software Development
3W 16 Sep ch2 Types, Expressions, and Pseudocode HW1: p.20: T/F #1,2,5,6,8,9;
Multiple Choice #7,8,9,10;
Discussion #1,3,4
4F 18 Sep "Hello, World!" -- Your First Python Program Python/IDLE Intro
5M 21 Sep ch3, §8.4 Coding Style, Documentation, Basic Operators
6W 23 Sep §4.5, §7.1-7.3 Control Structures: if/elif/else, while Lab 1: M2 ch2.14 # 35 / 36 / 40 / 41
(choose one; do it in Python)
(#40: just take 3 purchases; no looping needed)
7F 25 Sep ch8 Common Pitfalls in Loops Quiz 1
8M 28 Sep §2.6, ch6 for, range(), Functions HW2: p.46 T/F #1,3,5,6; MC #1,3,4,7; Disc #4,5
p.69 T/F #2,6,9; Disc #1,2
9W 30 Sep §6.5.2, §4.4 Functions, Call-by-Value vs. Call-by-Reference, ROT13 example Lab 2: M2 ch3 # 17 / 29 / 37 / 38
10F 2 Oct §4.3, §11.1-11.2 C Arrays and Python Lists
11M 5 Oct §11.1-11.2 List Operations Quiz 2
12W 7 Oct Review
13F 9 Oct Midterm 1 (covers lectures 1-12 primarily, and also listed readings)
M 12 Oct (Canadian Thanksgiving holiday)
14W 14 Oct M2 §5.9; Py §13.2 Prime Sieve of Eratosthenes; Recursion
15F 16 Oct §4.4 Designing Libraries: Caesar Cipher
16M 19 Oct §9.2, M2 §7.6 Pseudorandom HW3: p.74 #15;
p.115 MC #2,3,6,7; Disc #2,4; Prog #7
(for programming questions, no write-up needed,
17W 21 Oct Py §4.6, PyTut ch7 File I/O Lab 3: M2 ch4 # 34 / 36 / 40
18F 23 Oct pickle docs Serialization for I/O Streams: pickle Quiz 3
19M 26 Oct (Class cancelled; Sean has the flu)
20W 28 Oct (Class cancelled; Sean has the flu)
21F 30 Oct (Class cancelled; Sean has the flu)
22M 2 Nov §7.4-7.5, PyTut ch8 Exceptions
23W 4 Nov M2 §8.2 Data Storage and Number Bases Lab 4 (see link)
24F 6 Nov §10.1-10.5 Introduction to Object-Oriented Programming Paper topic due
25M 9 Nov §10.1-10.5 Objects Review Quiz 4
HW4: p.192 T/F #2,8,9,10; M/C #3,4,6,9; Disc #3,5;
Prog #11 (test this to ensure it modifies the list in-place)
W 11 Nov (Remembrance Day holiday)
26F 13 Nov §11.3-11.4 Objects: Copy vs. Alias
27M 16 Nov Review
28W 18 Nov Midterm 2 (lectures 14-26 and associated readings)
29F 20 Nov OO: Fractions
30M 23 Nov §11.6, PyTut §5.5 Dictionaries HW5: ch10 (p.329) T/F #2,4,6,7,9;
M/C #1,3; Disc #2; Prog #9 (testbed not needed)
31W 25 Nov M2 §14.3- 14.4, PyTut §5.1.1-5.1.2 Stacks and Queues Lab 5 (see link)
32F 27 Nov M2 §9.2-9.6 Sets and Bitsets Quiz 5
33M 30 Nov ch5 Intro to 2D Graphics in Python
34W 2 Dec §10.6, §11.5 OO GUI Design: Button and Calculator Paper due (see marking rubric)
35F 4 Dec ch9, especially §9.4-9.5; doctest Software Development Models and doctest HW6: §11.6 p.376 T/F #3-9;
M/C #3,6,9,10; Disc #2
36M 7 Dec User Interface Design Quiz 6
37W 9 Dec Semester Review Lab 6: Py ch12 p.423 #3 / 4 / 7.
(extra credit, up to 10pts: make a nice GUI for your program!)
10, 14 Dec (Special office hours: Thu 10Dec 10-3; Mon 14Dec 10-11 and 12-1; and by appointment)
M 14 Dec Final exam: 14:00-16:00 Neu21