Introduction to CS and Programming using Python
(Fall 2021)

You are not logged in.

If you are a current student, please Log In for full access to the web site.
Note that this link will take you to an external site ( to authenticate, and then you will be redirected back to this page.

Lecture Material

In-person Lectures
at 3pm-4:30pm in 26-100 with
Login to view: Live Zoom used for polls and chat
(no lecture recordings will be available!)

Slides and Code
in Calendar below

Office Hours

In-person in 38-370 and on Zoom
(get a spot via the Help Queue)

No OH during lecture hours
Monday-Thursday: 9am-9pm
Friday 9am-5pm

This Week's Pset

Changing Buddy Preferences?
PSet Buddy Form

Recitation Schedule

In-person on Fridays (and optional)
11am in 37-212
1pm in 37-212
2pm in 37-212
Recitation Feedback Form

Calendar and Materials 6.0001 - Fall 2021

View 6.0002 Calendar
All course announcements are on -> Stellar linked here <-
9/6 PS 0 out
9/8: Lecture 1 slides
Admin and overview, what is computation, intro to programming languages and Python, assignment, types (int, float, str), objects, branching, indentation
Readings: Ch 1, Ch 2.1-2.3
Lec1 Finger Ex. out PS 1 out
9/10 PS 0 due at 9PM (No checkoff for PS 0)
9/13: Lecture 2 slides
Iteration (while loops, basic for loops with range), guess and check algorithms, Strings (insertion, deletion)
Readings: Ch 2.4-2.8, 3.1
Microquiz 0 (testing microquiz mechanics, not for points, take it on your own between 4:30pm and 9:30pm)
Lec2 Finger Ex. out Lec1 Finger Ex. due
9/15: Lecture 3 slides
Floating point, approximate solutions, bisection methods
Readings: Ch 3.2-3.5
Lec3 Finger Ex. out Lec2 Finger Ex. due
Microquiz 1 (30 minutes in-class on your computer)
Click this Link for Microquiz 1
9/17: Recitation 1 notes 6.0001 Add Deadline
9/20: Lecture 4 slides
Decomposition, abstraction, functions, scope, tuples, lists
Readings: Ch 4.1-4.3, 5.1-5.3
Lec4 Finger Ex. out Lec3 Finger Ex. due PS 2 out PS 1 due at 9PM
9/21 PS 1 Checkoffs start
9/22: Lecture 5 slides
Mutability, aliasing, for loops over sequences, exceptions, assertions
Readings: Ch 5.3-5.5, 9
Microquiz 2 (30 minutes in-class on your computer)
Lec5 Finger Ex. out Lec4 Finger Ex. due
9/24: Recitation 2 notes
9/27: Lecture 6 slides
Dictionaries, functions as objects, recursion
Readings: Ch 4.4, 5.7, 6
Lec6 Finger Ex. out Lec5 Finger Ex. due PS 3 out PS 2 due at 9PM
9/28 PS 2 Checkoffs start PS 1 Checkoff due
9/29: Lecture 7 slides
Data abstraction, start classes, subtyping, substitution rule
Readings: Ch 10.1
Microquiz 3 (30 minutes in-class on your computer)
Lec6 Finger Ex. due No L7 Finger Ex.
10/1: Recitation 3 notes
10/4: Lecture 8 slides
Inheritance, extended example using classes, class attributes
Readings: Ch 10.2-10.5
Lec8 Finger Ex. out PS 4 out
10/6: Lecture 9 slides
Introduce algorithm analysis, implementing lists using indirection, binary search, selection sort, merge sort
Readings: Ch 11, Ch 12.1,12.2
Lec8 Finger Ex. due PS 3 Checkoffs start No L9 Finger Ex.
10/7 PS 2 Checkoff due
10/8: Recitation 4 notes 6.0001 Drop Deadline
10/11: Holiday No Class or OH
10/12 PS 5 out
10/13: Lecture 10 slides
Amortized analysis, hashing
Readings: Ch 12.3
Microquiz 4 (45 minutes in-class on your computer)
PS 4 due at 9PM No L10 Finger Ex.
10/14 PS 4 Checkoffs start PS 3 Checkoff due
10/15: Recitation 5 notes
10/18: Lecture 11 slides
Plotting, wrap-up
Readings: Ch 13
No L11 Finger Ex.
10/20 PS 4 Checkoff due
10/21 PS 5 due at 9PM (No checkoff for PS 5)