(full semester) Introduction to CS and Programming using Python
(Spring 2024)
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.mit.edu) to authenticate, and then you will be redirected back to this page.
Announcements
- May 13, 2024: Next Steps Before Final Grades ALL PREVIOUS ANNOUNCEMENTS
Class Structure
- noted in Calendar below
- bring any questions to class
- a deeper dive into concepts
- and more in-class coding
- extra practice and help, discussion-based
- relation of 6.100 materials to progress in generative-AI
Office Hours
(get a spot via the Help Queue)
Tues: 11am to 9pm
Wed: 11am to 9pm
Thurs: 9am-9pm
Friday 9am-5pm
Blended Learning
Let me know of any ongoing feedback anonymously Login to view: via this form!
This Week's Pset
Calendar and Materials 6.100L - Spring 2024
Monday
Tuesday
Wednesday
Thursday
Friday
2/5: Lecture 1 zip
Link: in-class content
Link: in-class content
Topics:
Introduction to Python: knowledge, machines, objects, types, variables, bindings, IDEs
Lec1 Finger Ex. out
PS 0 out
PS 1 out
Readings: Ch 1, Ch 2.1-2.2
2/6
2/7: Lecture 2
Link: in-class content
Link: in-class content
Topics:
Core elements of programs: strings, input/output, f-strings, operators, branching, indentation
Lec2 Finger Ex. out
Lec1 Finger Ex. due
Readings: Ch 2.3-2.4
2/8
Microquiz 0
(testing microquiz mechanics, not for points, take it on your own between 4:30pm and 9:30pm)
2/9
PS 0 due at 9PM
(No checkoff for PS 0)
Check+Submit this box if you will attend this recitation. |
2/12: Lecture 3
Link: in-class content
Link: in-class content
Topics:
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
2/13
2/14: Lecture 4
Link: in-class content
Link: in-class content
Topics:
Iteration, simple programs: guess and check, binary, fractions
Lec4 Finger Ex. out
Lec3 Finger Ex. due
Readings: Ch 3.1, 3.3
2/15
2/16
Check+Submit this box if you will attend this recitation. |
2/19: Holiday
No Class or OH
2/20: Lecture 5
Link: in-class content
No OH
Link: in-class content
Topics:
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
2/21: Lecture 6
Link: in-class content
Link: in-class content
Topics:
Simple Algorithms: bisection search, Newton-Raphson
Lec6 Finger Ex. out
Lec5 Finger Ex. due
Readings: Ch 3.4, 3.5
2/22
2/23
Recitation 3
Coaching for PS 1
Check+Submit this box if you will attend this recitation. |
2/26: Lecture 7
Link: in-class content
Link: in-class content
Topics:
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
2/27
2/28: Lecture 8
Link: in-class content
Link: in-class content
Topics:
Functions: environments, scope, functions as objects
Lec8 Finger Ex. out
Lec7 Finger Ex. due
PS 2 out
PS 1 due at 9PM
Readings: Ch 4.3-4.6
2/29
PS 1 Checkoffs start
3/1
Last Day We Accept Adds
Recitation 4
Neural networks
Check+Submit this box if you will attend this recitation. |
3/4: Lecture 9
Link: in-class content
Link: in-class content
Topics:
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
3/5
3/6: Lecture 10
Link: in-class content
Link: in-class content
Topics:
List operations, mutability: mutation, aliasing, tricky examples with loops over L
Lec10 Finger Ex. out
Lec9 Finger Ex. due
PS 2 halfway-handin due at 9PM
Readings: Ch 5.3-5.5
3/7
PS 1 Checkoff due at 8PM
3/8
Recitation 5
Coaching for PS 2
Check+Submit this box if you will attend this recitation. |
3/11: Lecture 11
Link: in-class content
Link: in-class content
Topics:
Alising and cloning
Readings: Ch 5.3-5.5
Microquiz 5
(30 minutes in-class on your computer)
Lec11 Finger Ex. out
Lec10 Finger Ex. due
3/12
3/13: Lecture 12
Link: in-class content
Link: in-class content
Topics:
List comprehensions, more functions as objects, default arguments, Debugging: glass box/black box testing, examples
Lec12 Finger Ex. out
Lec11 Finger Ex. due
PS 3 out
PS 2 due at 9PM
Readings: Ch 4.4, Ch 8
3/14
PS 2 Checkoffs start
3/15
Check+Submit this box if you will attend this recitation. |
3/18: Lecture 13
Link: in-class content
Link: in-class content
Topics:
Exceptions, assertions
Readings: Ch 9
Microquiz 6
(30 minutes in-class on your computer)
Lec13 Finger Ex. out
Lec12 Finger Ex. due
3/19
3/20: Lecture 14
Link: in-class content
Link: in-class content
Topics:
Dictionaries: keys, values, mutability, iteration over a dict, examples
Lec14 Finger Ex. out
Lec13 Finger Ex. due
PS 3 halfway-handin due at 9PM
Readings: Ch 5.7
3/21
PS 2 Checkoff due at 8PM
3/22
Check+Submit this box if you will attend this recitation. |
3/25: Spring Break
No Class or OH
3/26: Spring Break
No Class or OH
3/27: Spring Break
No Class or OH
3/28: Spring Break
No Class or OH
3/29: Spring Break
No Class or OH
4/1: Lecture 15
Link: in-class content
Link: in-class content
Topics:
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
4/2
4/3: Lecture 16
Link: in-class content
Link: in-class content
Topics:
Recursion: fibonacci, fibonacci with a dict, recursion on non-numerics, recursion on lists, Towers of Hanoi (extra)
Lec16 Finger Ex. out
Lec15 Finger Ex. due
Readings: Ch 6.2-6.4
4/4
4/5
Check+Submit this box if you will attend this recitation. |
4/8: Lecture 17
Link: in-class content
Link: in-class content
Topics:
Object Oriented Programming: data abstraction, class def, class instances, methods
Lec17 Finger Ex. out
Lec16 Finger Ex. due
Readings: Ch 10.1
4/9
4/10: Lecture 18
Link: in-class content
Link: in-class content
Topics:
Object Oriented Programming: dunder methods, examples
Lec18 Finger Ex. out
Lec17 Finger Ex. due
PS 4 out
PS 3 due at 9PM
Readings: Ch 10.1
4/11
PS 3 Checkoffs start
4/12
Recitation 9
from text frequency to chatbots
Check+Submit this box if you will attend this recitation. |
4/15: Holiday
No Class or OH
4/16
4/17: Lecture 19
Link: in-class content
Link: in-class content
Topics:
Inheritance: hierarchies, subclasses, using inherited methods, examples
Lec19 Finger Ex. out
Lec18 Finger Ex. due
PS 4 halfway-handin due at 9PM
Readings: Ch 10.2
4/18
PS 3 Checkoff due at 8PM
4/19
Recitation 10
Coaching for PS 4
Check+Submit this box if you will attend this recitation. |
4/22: Lecture 20
Link: in-class content
Link: in-class content
Topics:
Inheritance: more examples
Readings: Ch 10.4
Microquiz 8
(30 minutes in-class on your computer)
Lec20 Finger Ex. out
Lec19 Finger Ex. due
4/23
4/24: Lecture 21
Link: in-class content
No L21 Finger Ex.
Link: in-class content
Topics:
Complexity: measuring efficiency, timing programs, counting operations
Lec20 Finger Ex. due
PS 5 out
PS 4 due at 9PM
Readings: Ch 11
4/25
PS 4 Checkoffs start
4/26
Recitation 11
the MIT generative AI tutor
Check+Submit this box if you will attend this recitation. |
4/29: Lecture 22
Link: in-class content
Link: in-class content
Topics:
Complexity: Big-Oh notation, Big-Theta notation, complexity relations and classes, calc complexity
Readings: Ch 11
Microquiz 9
(45 minutes in-class on your computer)
Lec22 Finger Ex. out
4/30
5/1: Lecture 23
Link: in-class content
(No checkoff for PS 5)
Link: in-class content
Topics:
string and list examples, analyzing complexity, Search: indirection, linear search, bisection search
Lec23 Finger Ex. out
Lec22 Finger Ex. due
PS 5 halfway-handin due at 9PM
Readings: Ch 12.1
5/2
PS 4 Checkoff due at 8PM
5/3
Check+Submit this box if you will attend this recitation. |
5/6: Lecture 24
Link: in-class content
No L24 Finger Ex.
Link: in-class content
Topics:
Sort: bogo, bubble, selection, merge sort
Readings: Ch 12.2
Microquiz 10
(30 minutes in-class on your computer)
Lec23 Finger Ex. due
5/7
5/8: Lecture 25
Link: in-class content
(No checkoff for PS 5)
No L25 Finger Ex.
Link: in-class content
Topics:
Visualization library
PS 5 due at 9PM
Readings: Ch 13
5/9
No OH Today and Beyond
5/10
5/13: Lecture 26
Link: in-class content
No L26 Finger Ex.
Link: in-class content
Topics:
Extras: lists in memory, hashing, simulations, wrap-up, GenAI
Readings: Ch 12.3, Ch 17
5/14
5/15
5/16
5/17
5/20
5/21
5/22
5/23
5/24