(full semester) Introduction to CS and Programming using Python
(Fall 2022)

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 (https://shimmer.csail.mit.edu) to authenticate, and then you will be redirected back to this page.

Let me know of any ongoing feedback anonymously via this form!

Announcements

Lecture Material


In-person Lectures
at 3pm-4:30pm in 2-190 with
Login to view: Live Zoom for attending class if sick
(no recording will be available!)

Slides 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
OH start Thursday the first week of classes
Monday-Thursday: 9am-9pm
Friday 9am-5pm

This Week's Pset


Finished with 6.0001 Psets!


Changing Buddy Preferences?
PSet Buddy Form

Recitation Schedule


In-person (and optional)
Room is limited to first 40 students
Fridays at: 10am in 37-212
Recitation Feedback Form

Calendar and Materials 6.100L - Fall 2022

Monday
Tuesday
Wednesday
Thursday
Friday
9/5 PS 0 out
9/6
9/7: Lecture 1 zip
Introduction to Python: knowledge, machines, objects, types, variables, bindings, IDEs
Readings: Ch 1, Ch 2.1-2.2
Lec1 Finger Ex. out
9/8
9/9: Recitation 1 notes PS 0 due at 9PM (No checkoff for PS 0)
9/12: Lecture 2 zip
Core elements of programs: strings, input/output, f-strings, operators, branching, indentation
Readings: Ch 2.3-2.4
Lec2 Finger Ex. out Lec1 Finger Ex. due PS 1 out
9/13
Microquiz 0 (testing microquiz mechanics, not for points, take it on your own between 4:30pm and 9:30pm)
9/14: Lecture 3 zip
Program Flow: control flow, loops
Readings: Ch 2.5-2.8
Microquiz 1 (30 minutes in-class on your computer)
Lec3 Finger Ex. out Lec2 Finger Ex. due
9/15
9/16: Recitation 2 notes
9/19: Lecture 4 zip
Iteration, simple programs: guess and check, binary, fractions
Readings: Ch 3.1, 3.3
Lec4 Finger Ex. out Lec3 Finger Ex. due
9/20
9/21: Lecture 5 zip
Simple Algorithms: approximation method, floats
Readings: Ch 3.3, 3.2
Microquiz 2 (30 minutes in-class on your computer)
Lec5 Finger Ex. out Lec4 Finger Ex. due PS 1 halfway-handin due at 9PM
9/22
9/23: Student Holiday No Recitation or OH
9/26: Lecture 6 zip
Simple Algorithms: bisection search, Newton-Raphson
Readings: Ch 3.4, 3.5
Lec6 Finger Ex. out Lec5 Finger Ex. due
9/27
9/28: Lecture 7 zip
Functions: decomposition, abstraction, specifications
Readings: Ch 4.1-4.2
Microquiz 3 (30 minutes in-class on your computer)
Lec7 Finger Ex. out Lec6 Finger Ex. due
9/29
9/30: Recitation 3 notes
10/3: Lecture 8 zip
Functions: environments, scope, functions as objects
Readings: Ch 4.3-4.6
Lec8 Finger Ex. out Lec7 Finger Ex. due
10/4
10/5: Lecture 9 zip
Tuples and lists
Readings: Ch 5.1-5.3
Microquiz 4 (30 minutes in-class on your computer)
Lec9 Finger Ex. out Lec8 Finger Ex. due PS 2 out PS 1 due at 9PM
10/6 PS 1 Checkoffs start
10/7: Recitation 4 notes Add Date
10/10: Holiday No Class or OH
10/11: Student Holiday No OH
10/12: Lecture 10 zip
List operations, mutability: mutation, aliasing, tricky examples with loops over L
Readings: Ch 5.3-5.5
Lec10 Finger Ex. out Lec9 Finger Ex. due PS 2 halfway-handin due at 9PM
10/13
10/14: Recitation 5 notes PS 1 Checkoff due
10/17: Lecture 11 zip
Alising and cloning, list comprehensions
Readings: Ch 5.3-5.5
Microquiz 5 (30 minutes in-class on your computer)
Lec11 Finger Ex. out Lec10 Finger Ex. due
10/18
10/19: Lecture 12 zip
More functions as objects, keyword arguments, default arguments, Debugging: glass box/black box testing, examples
Readings: Ch 4.4, Ch 8
Lec12 Finger Ex. out Lec11 Finger Ex. due PS 3 out PS 2 due at 9PM
10/20 PS 2 Checkoffs start
10/21: Recitation 6 notes
10/24: Lecture 13 zip
Exceptions, assertions
Readings: Ch 9
Microquiz 6 (30 minutes in-class on your computer)
Lec13 Finger Ex. out Lec12 Finger Ex. due
10/25
10/26: Lecture 14 zip
Dictionaries: keys, values, mutability, iteration over a dict, examples
Readings: Ch 5.7
Lec14 Finger Ex. out Lec13 Finger Ex. due PS 3 halfway-handin due at 9PM
10/27 PS 2 Checkoff due
10/28: Recitation 7 notes
10/31: Lecture 15 zip
Recursion: iteration vs recursion, inductive reasoning
Readings: Ch 6.1
Microquiz 7 (30 minutes in-class on your computer)
Lec15 Finger Ex. out Lec14 Finger Ex. due
11/1
11/2: Lecture 16 zip
Recursion: fibonacci, fibonacci with a dict, recursion on non-numerics, recursion on lists, Towers of Hanoi (extra)
Readings: Ch 6.2-6.4
Lec16 Finger Ex. out Lec15 Finger Ex. due PS 4 out PS 3 due at 9PM
11/3 PS 3 Checkoffs start
11/4: Recitation 8 notes
11/7: Lecture 17 zip
Object Oriented Programming: data abstraction, class def, class instances, methods
Readings: Ch 10.1
Microquiz 8 (30 minutes in-class on your computer)
Lec17 Finger Ex. out Lec16 Finger Ex. due
11/8
11/9: Lecture 18 zip
Object Oriented Programming: dunder methods, examples
Readings: Ch 10.1
Lec18 Finger Ex. out Lec17 Finger Ex. due PS 4 halfway-handin due at 9PM
11/10 PS 3 Checkoff due
11/11: Holiday No Recitation or OH
11/14: Lecture 19 zip
Inheritance: hierarchies, subclasses, using inherited methods, examples
Readings: Ch 10.2
Lec19 Finger Ex. out Lec18 Finger Ex. due
11/15
11/16: Lecture 20 zip
Inheritance: more examples
Readings: Ch 10.4
Lec20 Finger Ex. out Lec19 Finger Ex. due PS 5 out PS 4 due at 9PM
11/17 PS 4 Checkoffs start
11/18: Recitation 9 notes
11/21: Lecture 21 zip
Complexity: measuring efficiency, timing programs, counting operations
Readings: Ch 11
Microquiz 9 (45 minutes in-class on your computer)
Lec20 Finger Ex. due No L21 Finger Ex.
11/22
11/23 Drop Date
11/24: Holiday No OH
11/25: Holiday No Recitation or OH
11/28: Lecture 22 zip
Complexity: Big-Oh notation, Big-Theta notation, complexity relations and classes, calc complexity
Readings: Ch 11
Lec22 Finger Ex. out
11/29
11/30: Lecture 23 zip
string and list examples, analyzing complexity, Search: indirection, linear search, bisection search
Readings: Ch 12.1
Lec23 Finger Ex. out Lec22 Finger Ex. due PS 5 halfway-handin due at 9PM
12/1 PS 4 Checkoff due
12/2: Recitation 10 notes
12/5: Lecture 24 zip
Sort: bogo, bubble, selection, merge sort
Readings: Ch 12.2
Microquiz 10 (30 minutes in-class on your computer)
Lec23 Finger Ex. due No L24 Finger Ex.
12/6
12/7: Lecture 25 zip
Visualization library
Readings: Ch 13
PS 5 due at 9PM No L25 Finger Ex.
12/8 PS 5 Checkoffs start
12/9
12/12: Lecture 26 zip
Extras: lists in memory, hashing, simulations, wrap-up
Readings: Ch 12.3, Ch 17
No L26 Finger Ex.
12/13 PS 5 Checkoff due
12/14 No Class or OH
12/15
12/16
12/19
12/20
12/21
12/22
12/23
12/26
12/27
12/28
12/29
12/30