Computer Science
CS 110 How To Program
|
Summer 2025
Home
Syllabus
Staff
Getting Help
Guide
Resources
Schedule
Day
Lecture Notes
Guide
Labs
Homework & Projects
Unit 1 - Bit
Mon Jun 23
Syllabus
Getting Started
For Lab 0 and Homework 0, you will use the material in the Getting Started section of the guide
Lab 0 - Getting Started
Due: Jun 23
Homework 0 - Getting Started
Due: Jun 23
Tue Jun 24
Introduction to Bit
Files
Video 1
Video 2
Video 3
Video 4
Introduction to Bit
Practice with Bit
Lab 1a - Introduction to Bit
Due: Jun 24
Video
Homework 1a - Introduction to Bit
Due: Jun 24
Wed Jun 25
Belonging Mentors
Defining and calling functions
Files
Video 1
Video 2
Video 3
Functions
Practice with functions
Lab 1b - Functions
Due: Jun 25
Video
Homework 1b - Functions
Due: Jun 25
Thur Jun 26
While
Files
Video 1
Video 2
Video 3
While loops
Practice - Fix the tree
Practice - Fix the bridge
Practice - Blue ocean
Lab 1c - While
Due: Jun 26
Video
Homework 1c - While
Due: Jun 26
Project 1 - Bit
Due: Jun 28
See Unit 1 Progress Check in Canvas
Due: Jun 28
Unit 2 - Decomposition with Bit
Mon Jun 30
If and Else
Files
Video 1
Video 2
Video 3
Video 4
If statements
Practice with if statements
Practice - event stream pattern
Lab 2a - If
Due: Jun 30
Video
Homework 2a - If
Due: Jun 30
Tue Jul 1
Return, And / or
Files
Video 1
Video 2
Video 3
Return
Combining conditions
Practice with conditions
Lab 2b - Conditions
Due: Jul 1
Video
Homework 2b - Conditions
Due: Jul 1
Wed Jul 2
Decomposition
Files
Video 1
Video 2
Decomposition
Lab 2c - Decomposition
Due: Jul 2
Video
Homework 2c - Decomposition
Due: Jul 2
Thur Jul 3
Variables, Functions with multiple parameters
Files
Video 1
Video 2
Variables
Practice with variables
Lab 2d - Variables
Due: Jul 3
Video
Homework 2d - Variables
Due: Jul 3
Project 2 - Bit Problems
Due: Jul 5
See Unit 2 Progress Check in Canvas
Due: Jul 5
Unit 3 - Interactive Programs
Mon Jul 7
Interactive programs (input, variables, formatted strings)
Video 1
Video 2
Files
Interactive programs
Using a debugger
Using pytest
Upgrading a package
Lab 3a - Interactive programs
Due: Jul 7
Video
Homework 3a - Interactive programs
Due: Jul 7
Tue Jul 8
Input loops
Video 1
Video 2
Files
Types and operators
Input loops
Lab 3b - Input loops
Due: Jul 8
Video
Homework 3b - Input loops
Due: Jul 8
Wed Jul 9
Lists
Files
Video 1
Video 2
Video 3
Lists
Practice with lists
Lab 3c - Lists
Due: Jul 9
Video
Homework 3c - Lists
Due: Jul 9
Thur Jul 10
List Patterns
Files
Video 1
Video 2
Operators
List Patterns
Lab 3d - List Patterns
Due: Jul 10
Video
Homework 3d - List Patterns
Due: Jul 10
Mon Jul 14
Tuples
Files
Video 1
Video 2
Tuples
None
Practice with tuples
Lab 3e - Tuples
Due: Jul 14
Video
Homework 3e - Tuples
Due: Jul 14
Tue Jul 15
Structured Data
Files
Video 1
Video 2
Float
Lists of tuples
Lab 3f - Structured Data
Due: Jul 15
Video
Homework 3f - Structured Data
Due: Jul 15
Project 3 - Youth Baseball
Due: Jul 17
See Unit 3 Progress Check in Canvas
Due: Jul 17
Wed Jul 16
Debugging
Files
Lab 3g - Debugging
Due: Jul 16
Homework 3g - Debugging
Due: Jul 16
Thur Jul 17
In-Class Discussion
Unit 4 - Strings
Mon Jul 21
Strings
Files
Video 1
Video 2
Strings
Lab 4a - Strings
Due: Jul 21
Video
Homework 4a - Strings
Due: Jul 21
Tue Jul 22
Substrings
Files
Video 1
Video 2
Substrings
Practice with strings
Lab 4b - Substrings
Due: Jul 22
Video
Homework 4b - Substrings
Due: Jul 22
Wed Jul 23
Terminal and program arguments
Files
Video 1
Video 2
Video 3
Using the terminal
Program arguments
Best practices for program arguments
Lab 4c - Program arguments
Due: Jul 23
Video
Homework 4c - Program arguments
Due: Jul 23
Mon Jul 28
Reading and writing files
Files
Video 1
Video 2
Video 3
Reading and writing files
Lab 4d - Files
Due: Jul 28
Video
Homework 4d - Files
Due: Jul 28
Tue Jul 29
Split and Join
Files
Video 1
Video 2
Split and join
Lab 4e - Split and join
Due: Jul 29
Video
Homework 4e - Split and join
Due: Jul 29
Wed Jul 30
Coiteration
Random
Files
Video 1
Video 2
Random
Coiteration with zip
Lab 4f - Random and Coiteration
Due: Jul 30
Video
Homework 4f - Random and Coiteration
Due: Jul 30
Project 4 - Wordle
Due: Aug 1
See Unit 4 Progress Check in Canvas
Due: Aug 1
Unit 5 - Dictionaries
Mon Aug 4
Dictionaries
Files
Video 1
Video 2
Dictionaries
Lab 5a - Dictionaries
Due: Aug 4
Video
Homework 5a - Dictionaries
Due: Aug 4
Tue Aug 5
Building dictionaries
Files
Video 1
Building dictionaries
Lab 5b - Creating dictionaries
Due: Aug 5
Video
Homework 5b - Creating dictionaries
Due: Aug 5
Wed Aug 6
Counting
Files
Video 1
Video 2
Counting
Lab 5c - Counting
Due: Aug 6
Video
Homework 5c - Counting
Due: Aug 6
Thur Aug 7
Grouping
Files
Video 1
Video 2
Grouping
Lab 5d - Grouping
Due: Aug 7
Video
Homework 5d - Grouping
Due: Aug 7
Project 5 - Cipher
Due: Aug 11
See Unit 5 Progress Check in Canvas
Due: Aug 11
Wrapping up
Mon Aug 11
Instructor Choice
JSON
Keyword arguments
Lambda functions
Working with images
Plotting climate change data
Lab sections will review final content
Practice Final -- see Canvas
No Homework. Do Project 5
ALL WORK DUE TODAY
Tue Aug 12
Reading Day
Wed Aug 13
Final