CS 10: The Beauty and Joy of Computing
UC Berkeley, Spring 2023
A gentle but thorough introduction to computer science.
Instructor: Teaching Professor Dan Garcia
Week 8 Announcements
General Reminders
- Weekly Blast 8 has been posted on Ed. Note that weekly blasts are required readings in CS10.
- The Midterm Logistics are also live on Ed. The without Snap! portion of the midterm goes live this Saturday!
- Project 4 - Explore Post, has been released and is due next Friday, 03/17.
- Please refer to the extensions and late submissions policy on the Syllabus for updated rules and regulations on how to request extensions and penalties for late submissoins.
CS10 Calendar
Week | Date | Lecture | Readings | Lab | Discussion | Assignment |
---|---|---|---|---|---|---|
1 | Mon 1/16 | HOLIDAY | ||||
Tue 1/17 | NO LAB | |||||
Wed 1/18 | 1. Welcome to CS10 & Abstraction (slides) | Section Signups Due | ||||
Thur 1/19 | 1. Welcome to Snap! (No Checkoff) | |||||
Fri 1/20 | 1. Snap! Basics | PROJ 1 RELEASED (due 2/3) | ||||
2 | Mon 1/23 | 2. Functions (Slides) | Week 2 Readings | RQ 1 (due 1/27) | ||
Tue 1/24 | 2. Build Your Own Blocks (due 1/26) | |||||
Wed 1/25 | 3. Numbers and Abstraction (Slides) | |||||
Thur 1/26 | 3. Conditionals, Reporters & Abstraction (due 1/31) | |||||
Fri 1/27 | 2. Number Rep & Control | RQ 1 Due | ||||
3 | Mon 1/30 | 4. Variables, Scope, Lists & HOFs (Slides) | Week 3 Readings | PROJ 1 PARTY RQ 2 (due 2/03) | ||
Tue 1/31 | 4. Lists & HOFs (due 2/02) | PROJ 1 Due | ||||
Wed 2/01 | 5. Algorithms (Slides) | PROJ 2: Spelling Bee RELEASED (due 2/17) | ||||
Thur 2/02 | 5. Algorithms (due 2/07) | |||||
Fri 2/03 | 3. Domain/Range, Scoping, Lists & HOFs | RQ 2 Due | ||||
4 | Mon 2/06 | 6. Algorithmic Complexity (Slides) | Week 4 Readings | QUEST REVIEW RQ 3 (due 2/10) | ||
Tue 2/07 | 6. Algorithmic Complexity (due 2/14) | |||||
Wed 2/08 | 7. Social Implications I (Slides) | |||||
Thur 2/09 | PROJ 2 Work Session/QUEST Review | |||||
Fri 2/10 | 4. Algorithms | QUEST (due 2/12) | ||||
5 | Mon 2/13 | 8. Social Implications II (slides) | PROJ 2 Party | |||
Tue 2/14 | 7. Boards (due 2/16) | |||||
Wed 2/15 | 9. Testing + 2048 (slides) | |||||
Thur 2/16 | 8. Testing + 2048 (due 2/21) | |||||
Fri 2/17 | 5. Algorithmic Complexity | PROJ 3: 2048 RELEASED (due 3/02) PROJ 2 Due | ||||
6 | Mon 2/20 | Holiday | ||||
Tue 2/21 | Week 6 Readings | 9. Trees & Fractals (due 2/28) | RQ 4 (due 2/24) | |||
Wed 2/22 | 10. Recursion I (slides) (code) | |||||
Thur 2/23 | PROJ Work Session | |||||
Fri 2/24 | 6. Recursion I | RQ 4 Due | ||||
7 | Mon 2/27 | 11. Recursion II (Fractals) (slides) (code) | Week 7 Readings | PROJ 3 PARTY RQ 5 (due 3/03) | ||
Tue 2/28 | 10. Recursive Reporters (due 3/07) | |||||
Wed 3/01 | 12. Recursion III (Count Change) (slides) (code) (movies) | |||||
Thur 3/02 | PROJ Work Session | PROJ 3 Due | ||||
Fri 3/03 | 7. Recursion II | PROJ 4: Explore Post RELEASED (post: due 3/20) (comments: due 3/24) RQ 5 Due | ||||
8 | Mon 3/06 | 13. Procedures as Data (HOFs) (slides) (code) | Week 8 Readings | MIDTERM Review RQ 6 (due 3/10) | ||
Tue 3/07 | 11. Functions as Data (HOFs) (due 3/14) | |||||
Wed 3/08 | 14. Programming Paradigms (slides) (code) | |||||
Thur 3/09 | Midterm Work Session | |||||
Fri 3/10 | 8. Python Basics | MIDTERM (w/o Snap!) (due 3/13) RQ 6 Due | ||||
9 | Mon 3/13 | 15. Python I (slides) | ||||
Tue 3/14 | 12. Welcome to Python (due 3/21) | |||||
Wed 3/15 | 16. Guest Lecture: Human-Computer Interaction (slides) (Professor Björn Hartmann) | |||||
Thur 3/16 | MIDTERM (w/ Snap!) (due 3/19) | |||||
Fri 3/17 | NO CLASS (midterm) | |||||
10 | Mon 3/20 | 17. Python II (recording from Fa22) | Week 10 Readings | PROJ 4 (post) DUE PROJ 5: Pyturis RELEASED (due 4/05) RQ 7 (due 3/24) | ||
Tue 3/21 | 13. Python Data Structures (due 3/23) | |||||
Wed 3/22 | 18. Guest Lecture: Limits of Computing (slides) (Victor Huang) | |||||
Thur 3/23 | 14. OOP in Python (due 4/04) | |||||
Fri 3/24 | 10. Python Data Structures | PROJ 4 (comments) Due Final Project Proposals (spec) (due 4/03) RQ 7 Due | ||||
11 | Mon 3/27 | Spring Recess | ||||
Tue 3/28 | Spring Recess | |||||
Wed 3/29 | Spring Recess | |||||
Thur 3/30 | Spring Recess | |||||
Fri 3/31 | Spring Recess | |||||
12 | Mon 4/03 | 19. Python III (OOP) (slides) (code) | Week 12 Readings | PROJ 5 Party FINAL PROJ Proposals Due RQ 8 (due 4/07) | ||
Tue 4/04 | 15. Text Processing in Python (due 4/13) | FINAL PROJ (due 4/28) | ||||
Wed 4/05 | 20. Python IV (HOFs) (slides) (code) | PROJ 5 DUE | ||||
Thur 4/06 | PROPOSAL REVIEWS | |||||
Fri 4/07 | 12. OOP | |||||
13 | Mon 4/10 | 21. Guest Lecture: The Future of Programming (Professor Sarah Chasins) (Slides) | Week 13 Readings | RQ 9 (due 4/14) | ||
Tue 4/11 | PROPOSAL REVIEWS | |||||
Wed 4/12 | 22. Python V (Tree Recursion, Game Theory) (slides) (code) | |||||
Thur 4/13 | 16. Intro to Data Science (due 4/18) | |||||
Fri 4/14 | 13. Python HOFs, Lambdas, Tree Recursion | RQ 9 Due | ||||
14 | Mon 4/17 | 23. Concurrency (slides) | Week 14 Readings | Final PROJ Party RQ 10 (due 4/21) | ||
Tue 4/18 | 17. Concurrency (due 4/20) | |||||
Wed 4/19 | 24. Guest Lecture: Saving the World with Computing (Professor Kathy Yelick) (Slides) | |||||
Thur 4/20 | 18. Snap! & Python Libraries (OPTIONAL) | |||||
Fri 4/21 | 14. Social Implications | RQ 10 Due | ||||
15 | Mon 4/24 | 25. Alumni Panel (Slides) | Week 15 Readings | FINAL Proj Party POSTTERM Review RQ 11 | ||
Tue 4/25 | PROJ Work Session | |||||
Wed 4/26 | 26. Conclusion and Farewell (slides) | |||||
Thur 4/27 | PROJ Work Session/Postterm Review | |||||
Fri 4/28 | 15. Postterm Review & Farewell | POSTTERM (due 5/02) Final PROJ Due RQ 11 Due | ||||
16 | Mon 5/01 | RRR | ||||
Tue 5/02 | RRR | |||||
Wed 5/03 | RRR | |||||
Thur 5/04 | RRR | |||||
Fri 5/05 | RRR | |||||
17 | Mon 5/08 | NO CLASS | ||||
Tue 5/09 | NO CLASS | |||||
Wed 5/10 | NO CLASS | |||||
Thur 5/11 | NO CLASS | |||||
Fri 5/12 | NO CLASS |