Course Schedule


WEEK DATES DUE DATES TOPICS MATERIALS RECORDINGS PRACTICE EXERCISE
UNIT: Programming Skills and Computer Organization
1 08/30 Mon Lecture: Course Intro & Algorithms and Abstraction Mon slides Mon recordings Mon practice Ex1-1
08/31 Tue
09/01 Wed Lecture: Programming Basics Wed slides - code Wed recordings Wed practice Ex1-2
09/02 Thu Recitation Rec problems
09/03 Fri Lecture: Data Representation Fri slides Fri recordings Fri practice Ex1-3
2 09/06 Mon Labor Day: No classes
09/07 Tue
09/08 Wed Check1 Lecture: Function Calls Wed slides - code
Bonus Graphics slides - graphics starter code
Wed recordings Wed practice Ex2-2
09/09 Thu Recitation Rec problems - code
09/10 Fri Lecture: Function Definitions Fri slides - code Fri recordings Ex2-3
3 09/13 Mon Hw1 Lecture: Booleans, Conditionals, and Errors Mon slides - code Mon recordings Mon practice Ex3-1
09/14 Tue
09/15 Wed Lecture: Circuits and Gates Wed slides Wed recordings Wed practice Ex3-2
09/16 Thu Recitation Rec problems - code
09/17 Fri Lecture: While Loops Fri slides - code Fri recordings Fri practice Ex3-3
4 09/20 Mon Check2 Lecture: For Loops Mon slides - code Mon recordings Mon practice Ex4-1
09/21 Tue Check1 & Hw1 revisions
09/22 Wed Quiz1 Quiz1 & Activity: Looping Over Strings Wed slides - code Wed recordings Wed practice Ex4-2
09/23 Thu Recitation Rec problems
UNIT: Data Structures and Efficiency
09/24 Fri Lecture: Lists and Methods
5 09/27 Mon Hw2 Lecture: References and Memory
09/28 Tue
09/29 Wed Lecture: Recursion
09/30 Thu Recitation
10/01 Fri Lecture: Recursion II & Search Algorithms
6 10/04 Mon Check3 Lecture: Dictionaries
10/05 Tue Check2 & Hw2 revisions
10/06 Wed Quiz2 Quiz2 & Activity: Designing Super-Fast Search
10/07 Thu Recitation
10/08 Fri Lecture: Runtime and Big-O Notation
7 10/11 Mon Hw3 Lecture: Trees
10/12 Tue
10/13 Wed Lecture: Graphs
10/14 Thu Midsemester Break: No classes
10/15 Fri Lecture: Search Algorithms II
8 10/18 Mon Check4 Lecture: Tractability
10/19 Tue Check3 & Hw3 revisions
10/20 Wed Quiz3 Quiz3 & Midsemester Feedback
10/21 Thu Recitation
UNIT: Scaling Up Computing
10/22 Fri Lecture: Levels of Concurrency
9 10/25 Mon Hw4 Lecture: Parallel Programming
10/26 Tue
10/27 Wed Lecture: How The Internet Works
10/28 Thu Recitation
10/29 Fri Lecture: Authentication and Encryption
10 11/01 Mon Check5 Lecture: Managing Large Code Projects
11/02 Tue Check4 & Hw4 revisions
11/03 Wed Quiz4 Quiz4 & Activity: Learning about Libraries
11/04 Thu Recitation
11/05 Fri Day for Community Engagement: No classes
UNIT: CS as a Tool
11 11/08 Mon Hw5 Lecture: Data Analysis - Modeling and Parsing
11/09 Tue
11/10 Wed Lecture: Simulation - Model, View, Controller
11/11 Thu Recitation
11/12 Fri Lecture: Machine Learning
12 11/15 Mon Check6-1 Lecture: Data Analysis - Analyzing and Visualizing
11/16 Tue
11/17 Wed Lecture: Simulation - Experiments and Trials
11/18 Thu Recitation
11/19 Fri Check5 & Hw5 revisions Lecture: Artificial Intelligence
13 11/22 Mon Quiz5 Quiz5 & Activity: Hw6 Collaboration Time
11/23 Tue Check6-2 | Check6-1 revisions
11/24 Wed Thanksgiving: No classes
11/25 Thu Thanksgiving: No classes
11/26 Fri Thanksgiving: No classes
UNIT: CS in the World
14 11/29 Mon Lecture: Computer Science History
11/30 Tue
12/01 Wed Hw6 | Check6-2 revisions Lecture: Computer Science Ethics
12/02 Thu Recitation
12/03 Fri Hw6 revisions Lecture: Computer Science Future
Finals 12/06 Mon -
12/13 Mon
Final Exam DO NOT SCHEDULE TRAVEL UNTIL THE FINAL EXAM SCHEDULE IS RELEASED