CS 88:
Computational Structures in Data Science
Fall 2023
Instructor: Michael Ball
M & W 2pm - 3pm PT VLSB 2050
Announcements
Welcome to DATA C88C!
This website is for Fall 2023!!
The Spring 2024 website will be up soon. Please note that during the Spring semester, we will be requiring lab attendance, details to be released soon.
Spring Exam Dates:
- Midterm, March 14: 7-9pm
- Final Exam will be 3 hours in the slot assigned by campus.
- We will provide an alternate time (TBD) for students with class conflicts
- Everyone is expected to attend the exam in person!
Spring 2024 Prospects
If you have questions about enrollment, please reach out to Data Science Adivsing. STAT20, and other prereqs will be approved, but only the advisors have access to CalCentral enrollments.
Welcome to DATA C88C Week 1️⃣5️⃣!
Lecture 25: SQL
Lecture 26: Wrap Up
Spring 2024 Prospects
If you have questions about enrollment, please reach out to Data Science Adivsing. STAT20, and other prereqs will be approved, but only the advisors have access to CalCentral enrollments.
Welcome to DATA C88C Week 1️⃣3️⃣!
Lecture 24: Ask Me Anything
- Self-Check — Review
- Nothing in this lecture is in scope for exams!
Holiday Break 11/22-11/24
- No CS88 Activities!
Spring 2024 Prospects
If you have questions about enrollment, please reach out to Data Science Advising. STAT20, and other prereqs will be approved, but only the advisors have access to CalCentral enrollments.
Welcome to DATA C88C Week 1️⃣2️⃣!
Lecture 22: Part 2 Iterators and Generators
Lecture 23: Databases and SQL
- Self-Check
- Reminder, No Class on Weds 11/22-11/24!
- Submit AMA Questions!
Spring 2024 Prospects
If you have questions about enrollment, please reach out to Data Science Advising. STAT20, and other prereqs will be approved, but only the advisors have access to CalCentral enrollments.
Welcome to DATA C88C Week 1️⃣1️⃣!
Lecture 20: Programming Paradigms
Lecture 21: Iterators and Generators
Spring 2024 Prospects
If you have questions about enrollment, please reach out to Data Science Advising. STAT20, and other prereqs will be approved, but only the advisors have access to CalCentral enrollments.
Welcome to DATA C88C Week 1️⃣0️⃣!
Lecture 18: Exceptions
Lecture 19: Trees
Welcome to DATA C88C Week 🔟!
Lecture 16: Linked Lists
Lecture 17: Efficiency
Midterm Scores Released on Gradescope
- Regrade requests close Thurs 10/26
- Complete the midterm feedback survey for EC
Welcome to DATA C88C Week 9️⃣!
Lecture 14: Object Oriented Programming
Lecture 15: OOP - Inheritance
Midterm Scores Released on Gradescope
- Regrade requests open Thurs 10/19
- Regrade requests close Thurs 10/26
Welcome to DATA C88C Week 8️⃣!
Lecture 13: Midterm Review
Reminder: Midterm 10/10 7-9PM
- See Ed/emails for seating and room locations
- No lecture 10/11
Welcome to DATA C88C Week 6️⃣!
Lecture 9: Mutable Data
Lecture 10: Abstract Data Types
Note: We're aware the Maps autograder has bugs! Please review Ed.
Welcome to DATA C88C Week 3!
However, the date of the Midterm (Oct 10) and Final Exam (Thurs Dec 14) are set! Please mark your calendars.
Lecture 4: for
Loops & Sequences
Welcome to DS/CS C88C Spring 2023!
Yes, this course has too many names!
Welcome everyone!
The current calendar is tenative.
However, the date of the Midterm (Oct 10) and Final Exam (Thurs Dec 14) are set! Please mark your calendars.
Lecture 1: Welcome
Join Ed
- Please join Ed if you aren't automatically enrolled in the course.
Lab 0: Thurs 8/24
Check the Google Calendar tab (above) for the times locations of labs this week. Week 0 labs are optional, but highly recommended. :)
Calendar
Wk | Date | Lecture | Reading | Lab & Discussion | Assignments |
---|---|---|---|---|---|
1 | Wed 8/23 | 1: Welcome & Intro
Q&A Self-Check Slides |
1.2 2.1 |
Lab 0: Community and Setup Solutions |
|
2 | Mon 8/28 | 2: Abstractions & Functions
Q&A Self-Check Slides txt py |
1.3 1.4 1.5 |
||
Tue 8/29 | Lab 1: Control and Functions Solutions |
Homework 1 Solutions |
|||
Wed 8/30 | 3: Loops & Functions
Q&A Self-Check Slides py |
1.3 1.4 1.5 |
Discussion 1: Control and Iteration Solutions | ||
3 | Mon 9/4 | No Lecture: Labor Day | |||
Tue 9/5 | Lab 2: Lists, List Comprehension and Iteration Solutions |
Homework 2 Solutions |
|||
Wed 9/6 | 4: Sequences & For Loops
Q&A Self-Check Slides py txt |
2.3 | Discussion 2: Lists and List Comprehensions Solutions | ||
4 | Mon 9/11 | 5: Higher Order Functions
Q&A Self-Check Slides py |
1.3 1.4 1.5 |
||
Tue 9/12 | Lab 3: Environments and Higher Order Functions Solutions |
Homework 3 Solutions |
|||
Wed 9/13 | 6: Lists & HOFs
Q&A Fa 21 Self-Check Slides py |
1.3 1.4 1.5 |
Discussion 3: HOFs and Environment Diagrams Solutions | ||
5 | Mon 9/18 | 7: HOFs and Environment Diagrams
Q&A Sp 22 Self-Check Slides py |
1.6 | ||
Tue 9/19 | Lab 4: Lambdas and Dictionaries Solutions |
Homework 4 Solutions |
|||
Wed 9/20 | 8: Lambdas & Dictionaries
Q&A Sp 22 Self-Check Slides py |
1.6 2.4 |
Discussion 4: Lambdas and Dictionaries Solutions | ||
Fri 9/22 | Maps Maps Checkpoint |
||||
6 | Mon 9/25 | 9: Mutable Data
Q&A Fa 22 Self-Check Slides py |
2.4 3.3 |
||
Tue 9/26 | Lab 5: ADTs Solutions |
Homework 5 Solutions |
|||
Wed 9/27 | 10: Abstract Data Types and Dictionaries
Q&A Sp 22 Fa 21 Self-Check Slides notebook py |
2.2 2.5 2.6 |
Discussion 5: Abstract Data Types Solutions | ||
7 | Mon 10/2 | 11: Recursion
Q&A Sp 22 Self-Check Slides py |
1.7 | ||
Tue 10/3 | Lab 6: Recursion Solutions |
Homework 6 Solutions |
|||
Wed 10/4 | 12: Tree Recursion
Q&A Sp 22 (More Recursion) Sp 22 Self-Check Slides py |
1.7 | Discussion 6: Recursion Solutions | ||
8 | Mon 10/9 | 13: More Recursion / MT Review
Q&A Fa 22 Self-Check Slides |
|||
Tue 10/10 | Midterm 7-9PM | ||||
Wed 10/11 | No Lecture: Break | ||||
9 | Mon 10/16 | 14: Object-Oriented Programming (OOP)
Q&A Fa 22 Self-Check Slides py |
2.5 2.6 2.7 |
||
Tue 10/17 | Lab 7: OOP Solutions |
Homework 7 Solutions |
|||
Wed 10/18 | 15: OOP - Inheritance
Q&A Fa 22 Self-Check Slides py |
2.5 2.7 |
Discussion 7: Object Oriented Programming Solutions | ||
10 | Mon 10/23 | 16: Data Structures: Linked Lists
Q&A Fa 22 Self-Check Slides py notebook |
2.9 | ||
Tue 10/24 | Lab 8: Inheritance + Linked Lists Solutions |
Homework 8 Solutions |
|||
Wed 10/25 | 17: Efficiency
Q&A Fa 22 Self-Check Slides py |
2.8 | Discussion 8: Inheritance & Linked Lists Solutions | ||
11 | Mon 10/30 | 18: Exceptions
Q&A Fa 22 Self-Check Slides py notebook |
2.4 3.3 |
||
Tue 10/31 | Lab 9: Trees + Exceptions Solutions |
Homework 9 Solutions |
|||
Wed 11/1 | 19: Data Structures: Trees
Q&A Fa 21 Self-Check Slides py notebook |
2.9 | Discussion 9: Trees & Efficiency & Exceptions Solutions | ||
12 | Mon 11/6 | 20: Programming Paradigms
Q&A Fa 21 Self-Check Slides |
|||
Tue 11/7 | Lab 10: Iterators and Generators Solutions |
Homework 10 Solutions |
|||
Wed 11/8 | 21: Iterators and Generators
Q&A Fa 21 Self-Check Slides py notebook |
4.2 | Discussion 10: Iterators and Generators Solutions | Ants Checkpoint |
|
Fri 11/10 | No Lecture: Veteran's Day | Ants |
|||
13 | Mon 11/13 | 22: More Iterators and Generators
Q&A Self-Check Slides notebook py |
4.2 | ||
Tue 11/14 | Lab 11: SQL Solutions |
Homework 11 Solutions |
|||
Wed 11/15 | 23: Databases and SQL
Q&A Fa 21 Self-Check Slides db py notebook |
4.3 | Discussion 11: More Iterators/Generators and SQL Solutions | ||
14 | Mon 11/20 | 24: Ask Me Anything
Q&A Self-Check Slides |
|||
Wed 11/22 | No Lecture: Thanksgiving Break | ||||
15 | Mon 11/27 | 25: SQL
Q&A Fa 21 Self-Check Slides sql notebook db |
4.3 | ||
Wed 11/29 | 26: Review and Wrap Up
Q&A Fa 21 Self-Check Slides |
Discussion 12: Final Review Solutions | |||
16 | Mon 12/4 | No Lecture: RRR Week | |||
Wed 12/6 | No Lecture: RRR Week | ||||
17 | Thu 12/14 | Final Exam 3-6PM |