Fall 2025, Willamette University
Section-01 MWF 10:20 AM - 11:20 AM, Ford 302
Ford 3rd Floor
An introduction to computer science using Python. Introduces students to the fundamental concepts of programming and computational problem solving. Students will study and create programs that perform various tasks, including text and file manipulation, internet scraping, data structures, and testing. Topics will include general programming idioms such as variables, logic and loops as well as Python specific idioms such as list comprehension and generators. Object-oriented programming will be introduced.
Week | Mon | Wed | Fri | HW Due 11:59 PM Mon |
---|---|---|---|---|
01 (25 Aug) | Karel 1 | Karel 2 | Karel 3 | Problem Set 0: Intro |
02 (01 Sep) | NO CLASS. | Karel 4 | Python | Problem Set 1: Karel |
03 (08 Sep) | Arithmetic | Range | Debug | Problem Set 2: Checkers |
04 (15 Sep) | Strings 0 | Strings 1 | Strings 2 | Problem Set 3: Strings |
05 (22 Sep) | Wordle | import | pgl | PROJECT 1: Wordle |
06 (29 Sep) | Functions | Review | Midterm 1 | [Guide] Practice: [1][sols][2][sols] |
07 (06 Oct) | Factoring | Click | NO CLASS. | Problem Set 4: Graphics |
08 (13 Oct) | Breakout | List | Lists | PROJECT 2: Breakout |
09 (20 Oct) | Pixels | Files | P3 | Problem Set 5: Histogram |
10 (27 Oct) | Tuples | Classes | Methods | PROJECT 3: ImageShop |
11 (03 Nov) | Dictionaries | Sets | Midterm 2 | [Guide] Practice: [1][sols][2][sols] |
12 (10 Nov) | Enigma | JSON | Teaching Machine | PROJECT 4: Enigma |
13 (17 Nov) | Adventure | Splits | Binary Search | |
14 (24 Nov) | Lambdas | FALL BREAK: NO CLASS. | PROJECT 5: Adventure | |
15 (01 Dec) | Mergesort | C | STUDY DAYS: NO CLASS. | [Guide] Practice: [1][sols][2][sols] |
You may benefit from following Prof. Jed Rembold's video guides.
install.py
should be run once, to allow Karel to work (then may be safely deleted).
first_karel.py
should work after using the install script.
karel.py
has to be there for everything else to work, but you don't need to worry about it.