CS 10: The Beauty and Joy of Computing
UC Berkeley, Fall 2022
A gentle but thorough introduction to computer science.
Instructor: Teaching Professor Dan Garcia
CS10 Calendar
Week | Date | Lecture | Readings | Lab | Discussion | Assignment |
---|---|---|---|---|---|---|
1 | Mon 8/22 | No Class | No Class | |||
Tue 8/23 | No Class | Section Signups Due | ||||
Wed 8/24 | 1. Welcome to CS10 & Abstraction (slides)(live stream) (recording) | 1. Welcome to Snap! (No checkoff) | ||||
Thur 8/25 | 1. Welcome to Snap! (No checkoff) | |||||
Fri 8/26 | 2. Functions(slides)(live stream) (recording) | 1. Welcome to CS 10! | ||||
2 | Mon 8/29 | Week 2 Readings | 2. Build Your Own Blocks (due 8/31) | 1. Welcome to CS 10! | Proj 1: Wordle™ Lite (due 09/07) Reading Quiz 1 (due 9/2) | |
Tue 8/30 | 2. Build Your Own Blocks (due 9/1) | 1. Welcome to CS 10! | ||||
Wed 8/31 | 3. Numbers and Abstraction (slides)(live stream) (recording) | 3. Conditionals, Reporters, & Abstraction (due 9/7) | ||||
Thur 9/1 | 3. Conditionals, Reporters, & Abstraction (due 9/6) | |||||
Fri 9/2 | 4. Lists, Scoping, & HOFs(slides)(code)(live stream) (recording) | 2. Number Rep & Control Structures | Reading Quiz 1 Due | |||
3 | Mon 9/5 | Week 3 Readings | NO CLASS (Labor Day) | NO CLASS (Labor Day) | release Reading Quiz 2 (due 9/9) | |
Tue 9/6 | 4. Lists & HOFs (due 9/8) | 2. Number Rep & Control Structures | ||||
Wed 9/7 | 5. Algorithms(slides)(code)(live stream) (recording) | 4. Lists & HOFs (due 9/12) | PROJ 1 Due | |||
Thur 9/8 | 5. Algorithms (due 9/20) | |||||
Fri 9/9 | 6. Social Implications (I)(slides)(code)(live stream) (recording) | 3. Domain/Range, Scoping, Lists & HOFs | Reading Quiz 2 Due (release PROJ 2: Wordle™) (due 9/22) | |||
4 | Mon 9/12 | 5. Algorithms (due 9/19) | 3. Domain/Range, Scoping, Lists & HOFs | |||
Tue 9/13 | 3. Domain/Range, Scoping, Lists & HOFs | |||||
Wed 9/14 | 7. Social Implications (II- Education)(slides) (live stream) (recording) | PROJ 2 Work Session | ||||
Thur 9/15 | PROJ 2 Work Session | |||||
Fri 9/16 | 8. Algorithmic Complexity(slides) (live stream) (recording) | 4. Algorithms | release QUEST (due 9/18) | |||
5 | Mon 9/19 | Week 5 Readings | 6. Algorithmic Complexity (due 9/21) | 4. Algorithms | release Reading Quiz 3 (due 9/23) | |
Tue 9/20 | 6. Algorithmic Complexity (due 9/22) | 4. Algorithms | ||||
Wed 9/21 | 9. Testing + 2048 (slides) (live stream) (recording) | 7. Testing + Proj 3 (due 9/26) | ||||
Thur 9/22 | 7. Testing + Proj 3 (due 9/27) | PROJ 2 Due | ||||
Fri 9/23 | 10. Recursion I (Functional)(slides) (live stream) (recording)(code) | 5. Algorithmic Complexity | Reading Quiz 3 Due PROJ 3: 2048 released (due 10/06) | |||
6 | Mon 9/26 | Week 6 Readings | 8. Boards (due 9/28) | 5. Algorithmic Complexity | release Reading Quiz 4 (due 9/30) | |
Tue 9/27 | 8. Boards (due 9/28) | 5. Algorithmic Complexity | ||||
Wed 9/28 | 11. Recursion II (Fractals)(slides) (live stream) (recording)(code) | 9. Trees & Fractals (due 10/3) | ||||
Thur 9/29 | 9. Trees & Fractals (due 10/4) | |||||
Fri 9/30 | 12. Recursion III (Count Change)(slides) (live stream) (recording)(code) | 6. Recursion I | Reading Quiz 4 Due | |||
7 | Mon 10/3 | Week 7 Readings | 10. Recursive Reporters (due 10/5) | 6. Recursion I | ||
Tue 10/4 | 10. Recursive Reporters (due 10/6) | 6. Recursion I | ||||
Wed 10/5 | 13. Guest Lecture: Saving the World with Computing (Professor Katherine Yelick)(slides) (live stream) (recording) | PROJ 3 Work Session | ||||
Thur 10/6 | PROJ 3 Work Session | PROJ 3 Due | ||||
Fri 10/7 | 14. Procedures as Data(slides) (live stream) (recording) (code) | 7. Recursion II | (PROJ 4: Explore Post released) (due 10/21) | |||
8 | Mon 10/10 | Week 8 Readings | 11. Functions as Data, HOFs (due 10/12) | 7. Recursion II | release Reading Quiz 6 (due 10/14) | |
Tue 10/11 | 11. Functions as Data, HOFs (due 10/13) | 7. Recursion II | ||||
Wed 10/12 | 15. AI(slides) (live stream) (recording) | Midterm Work Session | ||||
Thur 10/13 | Midterm Work Session | |||||
Fri 10/14 | 16. Programming Paradigms (slides) (live stream) (recording) | NO CLASS (MIDTERM) | Reading Quiz 6 Due | |||
9 | Mon 10/17 | MIDTERM | Week 9 Readings | Midterm (W/ Snap! Portion) | NO CLASS (MIDTERM) | Reading Quiz 7 CANCELLED |
Tue 10/18 | MIDTERM | Midterm (w/ Snap! Portion) | NO CLASS (MIDTERM) | |||
Wed 10/19 | 17. Python I - Intro (slides) (live stream) (recording) | 12. Welcome to Python (due 10/24) | ||||
Thur 10/20 | 12. Welcome to Python (due 10/25) | |||||
Fri 10/21 | 18. Python II - Data Types & Structures (slides) (live stream) (recording) | 9. Intro to Python | PROJ 4 (POST) Due | |||
10 | Mon 10/24 | 13. Data Structures in Python (due 10/26) | 9. Intro to Python | PROJ 4 (COMMENTS) Due (PROJ 5: Pyturis released) (due 11/07) | ||
Tue 10/25 | 13. Data Structures in Python (due 10/27) | 9. Intro to Python | ||||
Wed 10/26 | 19. Python III - OOP (slides) (live stream) (recording)(code) | 14. OOP in Python (due 10/31) | (FINAL PROJ Proposal RELEASED) (due 11/4) | |||
Thur 10/27 | 14. OOP in Python (due 11/1) | |||||
Fri 10/28 | 20. Python IV - HOFs(slides) (live stream) (recording)(code) | 10. Data Structures in Python | (FINAL PROJ released) (due 11/30) | |||
11 | Mon 10/31 | Week 11 Readings | 15. Text Processing in Python (due 11/7) | 10. Data Structures in Python | release Reading Quiz 8 (due 11/4) | |
Tue 11/1 | 15. Text Processing in Python (due 11/8) | 10. Data Structures in Python | ||||
Wed 11/2 | 21. Guest Lecture: Bringing AI tools closer to End-Users (Hellina Nigatu)(slides) (live stream) (recording) | PROJ 5 Work Session | ||||
Thur 11/3 | PROJ 5 Work Session | |||||
Fri 11/4 | 22. Python V - Tree Recursion & Game Theory (slides) (live stream) (recording) (code) | 11. OOP | Reading Quiz 8 Due FINAL PROJ Proposal Due | |||
12 | Mon 11/7 | Week 12 Readings | 6. Intro to Data Science (Optional) | 11. OOP | PROJ 5 Due release Reading Quiz 9 (due 11/11) | |
Tue 11/8 | 16. Intro to Data Science (Optional) | 11. OOP | ||||
Wed 11/9 | 23. Concurrency (slides) (live stream) (recording) | Proposal Reviews | ||||
Thur 11/10 | Proposal Reviews | |||||
Fri 11/11 | NO CLASS (Veteran's Day) | NO CLASS (Veteran's Day) | Reading Quiz 9 Due | |||
13 | Mon 11/14 | Week 13 Readings | 17. Concurrency (Optional) | 12. Python HOFs, Lambdas, Tree Recursion | release Reading Quiz 10 (due 11/18) | |
Tue 11/15 | 17. Concurrency (Optional) | |||||
Wed 11/16 | 24. Guest Lecture: Human-computer interaction (HCI) (Professor Eric Paulos)(live stream) (recording)(slides) | Catchup Work Session | ||||
Thur 11/17 | Catchup Work Session | |||||
Fri 11/18 | 25. Guest Lecture: Limits of Computing (Professor Jelani Nelson)(live stream) (recording) | Reading Quiz 10 Due | ||||
14 | Mon 11/21 | Week 14 Readings (optional) | 18. Snap! & Python Libraries (Optional) | release Reading Quiz 11 (due 11/25) | ||
Tue 11/22 | 18. Snap! & Python Libraries (Optional) | |||||
Wed 11/23 | NO CLASS (Thanksgiving) | NO CLASS (Thanksgiving) | ||||
Thur 11/24 | NO CLASS (Thanksgiving) | |||||
Fri 11/25 | NO CLASS (Thanksgiving) | NO CLASS (Thanksgiving) | Reading Quiz 11 Due | |||
15 | Mon 11/28 | 15. Postterm Review & Farewell | ||||
Tue 11/29 | ||||||
Wed 11/30 | 24. Alumni Panel (recording)(slides) | FINAL PROJ Cancelled (Not Due) | ||||
Thur 12/1 | ||||||
Fri 12/2 | 25. Conclusion & Farewell (slides) | Postterm RELEASED Saturday 12/3 | ||||
16 | Mon 12/5 | NO CLASS (RRR Week) | NO CLASS (RRR Week) | Postterm DUE | ||
Tue 12/6 | NO CLASS (RRR Week) | |||||
Wed 12/7 | NO CLASS (RRR Week) | NO CLASS (RRR Week) | ||||
Thur 12/8 | NO CLASS (RRR Week) | |||||
Fri 12/9 | NO CLASS (RRR Week) | NO CLASS (RRR Week) | ||||
17 | Mon 12/12 | NO CLASS (Finals Week) | NO CLASS (Finals Week) | |||
Tue 12/13 | NO CLASS (Finals Week) | |||||
Wed 12/14 | NO CLASS (Finals Week) | NO CLASS (Finals Week) | ||||
Thur 12/15 | NO CLASS (Finals Week) | |||||
Fri 12/16 | NO CLASS (Finals Week) | NO CLASS (Finals Week) |