(full semester) Introduction to CS and Programming using Python
(Spring 2024)
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