CS 111: Intro to CS

Links:

This schedule will change and adapt as the term goes on. Readings are listed the day they're assigned; your work on them is due before the next class. For general information about the course, please see the Syllabus.

Click here to go to the current week. It may be helpful to bookmark that link.

Week 1: Intro to Python
Basic data types, arithmetic, functions
Date Class Topic Out Reading
1. M 1/5 Getting to know you: me, your classmates, computer science, and Python HW0: Hello! 1.1–1.4
2. W 1/7 Using Python 1.5
3. F 1/9 The Python REPL; the text editor HW1: Command Line 2.3–2.4
Week 2: Weather Simulation
For-loops, booleans, branching, functions w/ return values
4. M 1/12 Drawing a scene Project 1: Turtle Drawing 2.5
5. W 1/14 Quiz 1; Weather data Project 2: Weather Simulation 2.6
6. F 1/16 More Weather Work 3.1–3.4
Week 3: Cryptography
String functions, iterators, modular arithmetic
7. M 1/19 Decrypting the 3-rail cipher 3.5–3.6
8. W 1/21 Quiz 2; Substitution ciphers Project 3: Vigenère cipher 3.7
9. F 1/23 Vigenère cipher 4.1–4.3
Week 4: Analyzing Large Datasets
Lists, nested lists, file I/O
Date Class Topic Out Reading
10. M 1/26 Password stats; Course feedback 4.4—4.5.2
11. W 1/28 Quiz 3; More work on password stats 4.7, 5.2
12. F 1/30 Password stats with frequencies Project 4: Earthquake Data Visualization 4.5.3, 4.6.1, 4.6.3
Week 5: Text analysis
Dictionaries, while-loops
13. M 2/2 Textual style analysis 5.3–5.3.1
14. W 2/4 Quiz 4; While-loops vs. For-loops; Markov chains to build random text Project 5: Random Sentence Generator 6.1–6.3.2
15. F 2/6 More random text work 6.3.3–6.5.3
Week 6: Image Processing
Nested loops, namespaces/scoping
XX. M 2/9 No class (like a Marxist utopia)
16. W 2/11 Processing images Project 6: Green-Screening 6.5.4
17. F 2/13 Quiz 5; Picking apart cImage None
Week 7: Physical Simulation
Designing and writing classes
Date Class Topic Out Reading
18. M 2/16 Functions and namespaces (left over from week 6) 10.2–10.3.3
19. W 2/18 Quiz 6; The Hows and Whys of Object-Oriented Design 10.3.4–10.5
20. F 2/20 Building with classes Project 7: Lunar Lander Game 10.6
Week 8: Fractals
Recursion
21. M 2/23 Final Project; Writing Interactive Programs Final Project Design Document 9.2–9.3
22. W 2/25 Quiz 7; Interactivity Redux; Anagrams 9.4
23. F 2/27 More work on anagrams
Reminder — comps gala tomorrow!
Sup 1
 
Week 9: Data Organization
Searching and sorting
24. M 3/2 Recursion: Towers of Hanoi Project 8: Recursion
Pygame events tutorial
Sup 2
25. W 3/4 Searching and Selection Sort Sup 3
26. F 3/6 Sorting Sup 4
Week 10: Hard Problems
27. M 3/9 Quiz 8; Analyzing running times; Programs that run on code
28. W 3/11 The Halting Problem; Course evals
Exam Period
Sat. 3/14 Final demos during 4a Exam Period: 8:30am–11am
Mon. 3/16 Final projects due at 5pm