CS 10: The Beauty and Joy of Computing
UC Berkeley, Fall 2023
A gentle but thorough introduction to computer science.
Instructor: Teaching Professor Dan Garcia
Instructor’s OH: Friday 1-2PM in Soda-777
Lectures: Monday, Wednesday 1-2PM in Evans-10
OH Queue: oh.cs10.org
CS10 Calendar
Week | Date | Lecture | Readings | Lab | Discussion | Assignment |
---|---|---|---|---|---|---|
1 | Mon 8/21 | No Class | No Class | |||
Tue 8/22 | No Class | Section Signups Due | ||||
Wed 8/23 | 1. Welcome to CS10 & Abstraction (slides) | 1. Welcome to Snap! (No checkoff) | ||||
Thur 8/24 | 1. Welcome to CS 10! | |||||
Fri 8/25 | ||||||
2 | Mon 8/28 | 2. Functions (slides) | Week 2 Readings | 2. Build Your Own Blocks (due 8/30) | Proj 1: Wordle™ Lite (due 9/6) release Reading Quiz 1 (Due 9/1) | |
Tue 8/29 | ||||||
Wed 8/30 | 3. Numbers and Abstraction (slides) | 3. Conditionals, Reporters, & Abstraction (due 9/6) | ||||
Thur 8/31 | 2. Number Rep & Control Structures | |||||
Fri 9/1 | Reading Quiz 1 Due | |||||
3 | Mon 9/4 | Week 3 Readings | NO CLASS (Labor Day) | NO CLASS (Labor Day) | release Reading Quiz 2 (Due 9/8) | |
Tue 9/5 | ||||||
Wed 9/6 | 4. Lists, Scoping, & HOFs (slides) | 4. Lists & HOFs (due 9/11) | PROJ 1 Due | |||
Thur 9/7 | 3. Domain/Range, Scoping, Lists & HOFs | Proj 2: Spelling Bee (due 9/21) | ||||
Fri 9/8 | Reading Quiz 2 Due | |||||
4 | Mon 9/11 | 5. Algorithms (slides) | 5. Algorithms (due 9/13) | |||
Tue 9/12 | ||||||
Wed 9/13 | 6. Algorithmic Complexity (slides) | 6. Algorithmic Complexity (due 9/18) | ||||
Thur 9/14 | 4. Algorithms | |||||
Fri 9/15 | QUEST Released SAT 9/16 (due 9/17) | |||||
5 | Mon 9/18 | 7. Testing + 2048 (slides) | Week 5 Readings | 7. Testing + Proj 3 (due 9/25) | release Reading Quiz 3 (due 9/22) | |
Tue 9/19 | ||||||
Wed 9/20 | 8. Social Implications of Computing: Computers in Education (slides) | Project-2 Work Session NO Lab Assignment | ||||
Thur 9/21 | 5. Algorithmic Complexity | PROJ 2 Due | ||||
Fri 9/22 | Reading Quiz 3 Due PROJ 3: 2048 Released (due 10/5) | |||||
6 | Mon 9/25 | 9. Recursion I (Functional) (slides) (code) | Week 6 Readings | 8. Boards (due 9/27) | release Reading Quiz 4 (due 9/29) | |
Tue 9/26 | ||||||
Wed 9/27 | 10. Recursion II (Fractals) (slides) (code) | 9. Trees & Fractals (due 10/2) | ||||
Thur 9/28 | 6. Recursion I | |||||
Fri 9/29 | Reading Quiz 4 Due | |||||
7 | Mon 10/2 | 11. Recursion III (Count Change) (slides) (code) (movies) | Week 7 Readings | 10. Recursive Reporters (due 10/9) | release Reading Quiz 5 (Due 10/06) | |
Tue 10/3 | ||||||
Wed 10/4 | 12. Guest Lecture: Saving the World with Computing (Professor Kathy Yelick) (slides) | PROJ 3 Work Session NO new lab | ||||
Thur 10/5 | 7. Recursion II | PROJ 3 Due | ||||
Fri 10/6 | PROJ 4: Explore Post Released Reading Quiz 5 Due | |||||
8 | Mon 10/9 | 13. Procedures as Data (slides) (code) | NO Readings. | 11. Functions as Data, HOFs (due 10/16) | ||
Tue 10/10 | ||||||
Wed 10/11 | 14. Programming Paradigms (slides) (code) | Midterm Work Session | ||||
Thur 10/12 | ||||||
Fri 10/13 | NO CLASS (MIDTERM) | MIDTERM | ||||
9 | Mon 10/16 | 15. Python I - Intro (slides) | Week 9 Readings | 12. Welcome to Python (due 10/18) | release Reading Quiz 6 (Due 10/20) | |
Tue 10/17 | ||||||
Wed 10/18 | 16. Python II - Data Types & Structures (slides) | 13. Data Structures in Python (due 10/23) | ||||
Thur 10/19 | 9. Intro to Python | |||||
Fri 10/20 | Reading Quiz 6 Due | |||||
10 | Mon 10/23 | 17. Python III - OOP (slides) (code) | Week 10 Readings | 14. OOP in Python | Reading Quiz 7 released (Due 10/27) PROJ 4 (POST) Due PROJ 5: Pyturis released(due 11/6) | |
Tue 10/24 | ||||||
Wed 10/25 | 18. Python IV - HOFs (slides)(code) | 15. Text Processing in Python (due 10/30) | (FINAL PROJ Proposal)(due 10/31) PROJ 4 (COMMENTS) Due | |||
Thur 10/26 | 10. List Comprehension & Dictionaries | |||||
Fri 10/27 | Reading Quiz 7 Due (FINAL PROJ released) (due 11/29) | |||||
11 | Mon 10/30 | 19. Python Practice 🐍 (OOP problem mind-map) | Week 11 Readings | 16. Intro to Data Science (Optional) | release Reading Quiz 8 (Due 11/3) | |
Tue 10/31 | Final Project Psoposal DUE | |||||
Wed 11/1 | 20. Python V - Tree Recursion & Game Theory (slides)(code) | Final Project Proposal Meetings NO new lab. | ||||
Thur 11/2 | 11. OOP | |||||
Fri 11/3 | Reading Quiz 8 Due | |||||
12 | Mon 11/6 | 21. Concurrency (slides) | Week 12 Readings | Final Project Proposal Meetings NO new lab. | PROJ 5 Due release Reading Quiz 9 (due 11/11) | |
Tue 11/7 | ||||||
Wed 11/8 | 22. Guest Lecture: Human-computer interaction (HCI) (slides) (Professor Björn Hartmann) | 17. Concurrency (due 11/13) | ||||
Thur 11/9 | 12. Python HOFs, Lambdas, Tree Recursion | |||||
Fri 11/10 | Reading Quiz 9 Due | |||||
13 | Mon 11/13 | 23. Guest Lecture: Generative AI (slides) (Professor Hany Farid) | Week 13 Readings | Catchup Work Session | release Reading Quiz 10 (due 11/17) | |
Tue 11/14 | ||||||
Wed 11/15 | 24. Guest Lecture: Artificial Intelligence (slides) (Ezinne Nwankwo) | 18. Snap! & Python Libraries (due 11/20) | ||||
Thur 11/16 | 13. Social Implications | |||||
Fri 11/17 | Reading Quiz 10 Due | |||||
14 | Mon 11/20 | 25. Alumni Panel (slides) | No Reading Quiz | |||
Tue 11/21 | ||||||
Wed 11/22 | NO CLASS (Thanksgiving) | NO CLASS (Thanksgiving) | ||||
Thur 11/23 | NO CLASS (Thanksgiving) | |||||
Fri 11/24 | ||||||
15 | Mon 11/27 | 26. Guest Lecture: Limits of Computing (NO slides) (Professor Jelani Nelson) | Final Project Work-Session NO new lab. | No Reading Quiz | ||
Tue 11/28 | ||||||
Wed 11/29 | 27. Conclusion and Farewell (slides) | Final Project Work-Session NO new lab. | FINAL PROJ due | |||
Thur 11/30 | 15. Postterm Preparation Session & Farewell | |||||
Fri 12/1 | Postterm RELEASED at 2359hrs. | |||||
16 | Mon 12/4 | NO CLASS (RRR Week) | NO CLASS (RRR Week) | Postterm DUE at 2359hrs. | ||
Tue 12/5 | Postterm Exam Reviewed 2000-2200hrs @ Woz. | Postterm Retake-1 Released at 2359hrs. | ||||
Wed 12/6 | NO CLASS (RRR Week) | NO CLASS (RRR Week) | ||||
Thur 12/7 | NO CLASS (RRR Week) | Postterm Retake-1 DUE at 2359hrs. | ||||
Fri 12/8 | Postterm Retake-1 Reviewed 2000-2200hrs @ Soda-306. | Postterm Retake-2 Released at 2359hrs, Due SUN 12/10 at 2359hrs. | ||||
17 | Mon 12/11 | Postterm Retake-2 Reviewed 1500-1700hrs @ Woz. | NO CLASS (Finals Week) | Postterm Retake-3 Released at 2359hrs, due MON 12/18 at 2359hrs. | ||
Tue 12/12 | ||||||
Wed 12/13 | NO CLASS (Finals Week) | NO CLASS (Finals Week) | ||||
Thur 12/14 | NO CLASS (Finals Week) | |||||
Fri 12/15 |