Link Search Menu Expand Document

CS 10: The Beauty and Joy of Computing

UC Berkeley, Spring 2024

A gentle but thorough introduction to computer science.

Instructor: Teaching Professor Dan Garcia
Instructor’s OH: Wednesday 2-3PM Soda-777
Lectures: Monday, Wednesday 1-2PM in Soda-306
OH Queue: oh.cs10.org


CS10 Calendar

WeekDateLectureReadingsLabDiscussionAssignment
1Mon 1/17No ClassNo ClassNo Class
Tue 1/16No ClassNo ClassNo ClassSection Signups Due
Wed 1/171. Welcome to CS10 & Abstraction
(slides)
(recording)
1. Welcome to Snap!
(No Submission)
Thur 1/181. Welcome to CS 10!
Fri 1/19
2Mon 1/222. Functions
(slides)
(recording)
Week 2 Readings2. Build Your Own Blocks
(due 1/24)
Proj 1: Wordleâ„¢ Lite
(due 1/29)
release Reading Quiz 1
(Due 1/26)
Tue 1/23
Wed 1/243. Numbers and Abstraction
(slides)
(recording)
3. Conditionals, Reporters, & Abstraction
(due 1/29)
Thur 1/252. Number Rep & Control Structures
Fri 1/26Reading Quiz 1 Due
3Mon 1/294. Lists, Scoping, & HOFs
(slides)
(code)
(recording)
Week 3 Readings4. Lists & HOFs
(due 1/31)
release Reading Quiz 2
(Due 2/2)
PROJ 1 Due
Proj 2: Spelling Bee
(due 2/15)
Tue 1/30
Wed 1/315. Algorithms
(slides)
(recording)
5. Algorithms
(due 2/5)
Thur 2/13. Domain/Range, Scoping, Lists & HOFs
Fri 2/2Reading Quiz 2 Due
4Mon 2/56. Algorithmic Complexity
(slides)
(recording)
Week 4 Readings 6. Algorithmic Complexity
(due 2/7)
Tue 2/6
Wed 2/77. Testing + 2048
(slides)
(recording)
7. Testing + Proj 3
(due 2/12)
Thur 2/84. Quest-Review & HOFs
Fri 2/9QUEST 1 Released SAT 2/10
(due 2/11)
5Mon 2/128. Social Implications of Computing: Computers in Education
(slides)
(recording)
Week 5 Readings8. Boards
(due 2/21)
Reading Quiz 5 released
(due 2/16)
Tue 2/13
Wed 2/149. Recursion I (Functional)
(slides)
(code)
(recording)
Project-2 Work Session (No assignment)
NO Lab Assignment
Thur 2/155. Algorithmic ComplexityPROJ 2 Due
Fri 2/16Reading Quiz 5 Due
PROJ 3: 2048 Released
(Checkpoint-1 due 2/21 | Checkpoint-2 due 2/29)
QUEST 2 Released SAT 2/17
(due 2/18)
6Mon 2/19NO CLASSWeek 6 ReadingsNO CLASSNO CLASSrelease Reading Quiz 6
(due 2/23)
Tue 2/20
Wed 2/2110. Recursion II (Fractals)
(slides)
(code)
(recording)
9. Trees & Fractals
(due 2/26)
PROJ-3 Checkpoint-1 Due
Thur 2/226. Recursion I
Fri 2/23Reading Quiz 6 Due
QUEST 3 Released SAT 2/24
(due 2/25)
7Mon 2/2611. Recursion III (Count Change)
(slides)
(code)
(movies)
(recording)
Week 7 Readings 10. Recursive Reporters
(due 3/4)
release Reading Quiz 7
(Due 3/1)
Tue 2/27
Wed 2/2812. Guest Lecture: Saving the World with Computing
(slides)
(Professor Katherine (Kathy) Yelick)
(recording)
PROJ 3 Work Session (No assignment)
NO new lab
Thur 2/297. Recursion IIPROJ 3 Checkpoit-2 Due
Fri 3/1PROJ 4: Explore Post
(due 3/15)
Reading Quiz 5 Due
QUEST 4 Released SAT 3/2
(due 3/3)
8Mon 3/413. Procedures as Data
(slides)
(code)
(recording)
NO Readings.11. Functions as Data, HOFs
(due 3/11)
Tue 3/5
Wed 3/614. Programming Paradigms
(slides)
(code)
(recording)
Midterm Work Session (No assignment)
Thur 3/78. Midterm Review + Tree-Recursion
Fri 3/8Midterm-1 Released SAT 3/9
(due 3/10)
Quest-5 Released SAT 3/9
(due 3/10)
9Mon 3/1115. Python I - Intro
(slides)

(recording)
Week 9 Readings12. Welcome to Python
(due 3/13)
release Reading Quiz 6
(Due 3/15)
Tue 3/12
Wed 3/1316. Python II - Data Types & Structures
(slides)
(recording)
13. Data Structures in Python
(due 3/18)
Thur 3/149. Intro to Python
Fri 3/15 Reading Quiz 6 Due
MIDTERM 2 Released SAT 3/16
(due 3/17)
PROJ 4 (POST) Due
10Mon 3/1817. Python III - OOP
(slides) (code)
(mind-map)
(recording)
(IMP: __str__, __add__ methods)
Week 10 Readings14. OOP in Python (due 4/1)
PROJ 5: Pyturis released(due 4/5)
Tue 3/19
Wed 3/2018. Guest Lecture: Artificial Intelligence
(slides)

(Marwa Abdulhai)
(recording)
PROJ 5 Work Session (No assignment)(FINAL PROJ Proposal)(due 4/2)
Thur 3/2110. List Comprehension & Dictionaries
Fri 3/22 Week-10 Reading Quiz Due
(FINAL PROJ released)
(due 4/24)
MIDTERM 3 Released SAT 3/23
(due 3/24)
11Mon 3/25NO CLASSNO CLASSNO CLASSNO RQ; enjoy break :)
Tue 3/26NO CLASSNO CLASSNO CLASS
Wed 3/27NO CLASSNO CLASSNO CLASS
Thur 3/28NO CLASSNO CLASSNO CLASS
Fri 3/29NO CLASSNO CLASSNO CLASS
12Mon 4/119. Python IV - HOFs
(slides)
(code)
(recording)
NO RQ in Week-12. 15. Text Processing in Python
(due 4/10)
PROJ 4 COMMENTS Due
Tue 4/2(FINAL PROJ Proposal)(due 4/2)
Wed 4/320. Python V - Tree Recursion & Game Theory
(slides)
(code)
(recording)
Final Project Proposal Reviews (No assignment)
Thur 4/4 11. OOP </tr>
Fri 4/5PROJ 5 Due
MIDTERM 4 Released SAT 4/6
(due 4/7)
13Mon 4/821. Concurrency
(slides)
(recording)
Week 13 ReadingsFinal Project Proposal Reviews (No assignment)release Reading Quiz 9
(due 4/12)
Tue 4/9
Wed 4/1022. Guest Lecture: Human-Computer Interaction (HCI)
(slides)
(Professor Eric Paulos)
(recording)
17. Concurrency
(due 4/15)
Thur 4/1112. Python HOFs, Lambda Expressions, Tree-Recursion
Fri 4/12Reading Quiz Week-13 Due
MIDTERM 5 Released SAT 4/13
(due SUN 4/14)
14Mon 4/1523. AI Ethics
(Slides)
(recording)
Week-14 Readings
(due 4/19)
16. Intro to Data Science (Optional)
Tue 4/16
Wed 4/1724. Generative AI
(slides)
(recording)
(Eve Fleisig)
18. Snap! and Python Libraries
(due 4/22)
Thur 4/1813. Social Implications
Fri 4/19Reading Quiz Week-14 Due
15Mon 4/2225. Alumni Panel
(slides)

(recording)
Week-15 readings
(due 11/17)
Final Project Work-Session
NO new lab.
Tue 4/23
Wed 4/2426. Conclusion and Farewell
(slides)
Final Project Work-Session
NO new lab.
FINAL PROJ due
Thur 4/2514. Postterm Preparation Session & Farewell
Fri 4/26
PT-1 RELEASED SAT 4/27, DUE SUN 4/28 2359hrs.
Reading Quiz Week-15 Due
16Mon 4/29NO CLASS
(RRR Week)
NO CLASS
(RRR Week)
PT-1 REVIEWED 0900hrs @ Woz
Tue 4/30PT-2 RELEASED, DUE WED 5/1 at 2359 hrs.
Wed 5/1NO CLASS
(RRR Week)
NO CLASS
(RRR Week)
PT-2 DUE at 2359hrs.
Thur 5/2PT-2 REVIEWED 1100hrs @ Woz
Fri 5/3PT-3 RELEASED, DUE SUN 5/5 at 2359hrs.
17Mon 5/6NO CLASS
(Finals Week)
NO CLASS
(Finals Week)
PT-3 REVIEWED 1500hrs @ Soda-306
Tue 5/7PT-4 RELEASED, DUE TR 5/9 at 2359hrs.
Wed 5/8NO CLASS
(Finals Week)
NO CLASS
(Finals Week)
Thur 5/9NO CLASS
(Finals Week)
PT-4 DUE
Fri 5/10PT-4 REVIEWED 1300hrs @ SODA-306.PT-5 RELEASED at 1700hrs, DUE WED 5/15 at 2359hrs.