Introduction to Computer Science and Programming in Python

  • Free
  • No certificate
Provider
MIT
Cost
Free
Certificate
No certificate
Format
Self-paced
Language
English
Subjects
Python, Programming, Computer Science
Source
MIT Open Learning
Last verified
14 Sep 2026

6.0001 is MIT's fall 2016 half-semester introduction to programming for students with little or no prior experience, taught by Ana Bell, Eric Grimson and John Guttag and published in full on OpenCourseWare. It uses Python 3.5 and sets out to make students confident writing small programs that do something useful. The twelve recorded lectures start with what computation is, then cover branching and iteration; string manipulation, guess-and-check and bisection; decomposition, abstraction and functions; tuples, lists, aliasing and mutability; recursion and dictionaries; testing, debugging, exceptions and assertions; object-oriented programming; Python classes and inheritance; and two lectures on understanding program efficiency. Alongside the lecture videos, the site gives you the lecture slides and code, the in-class questions with video solutions, readings, and the problem sets with example programming assignments.

There is no instructor, grading or deadline: you download the materials and work at your own pace. Access is free and no registration is needed, and, like all OpenCourseWare, the content carries a Creative Commons licence and no certificate is available. If you want a graded version of this material with an optional paid certificate, MITx Online runs the companion course 6.00.1x.

Advertisement

What you’ll learn

  • Explain what computation is and write Python programs that use branching and iteration
  • Manipulate strings and solve problems with guess-and-check, approximation and bisection
  • Decompose problems into functions and use tuples, lists, dictionaries and recursion
  • Test and debug programs and handle exceptions and assertions
  • Write object-oriented Python with classes and inheritance
  • Reason about program efficiency and orders of growth

Who it’s for

Complete beginners who want an MIT-level first programming course in Python and are happy to learn from lecture videos and problem sets without a certificate.

Source: MIT Open Learning (opens in a new tab) · Verified · Report a change

Advertisement
FreeOpens ocw.mit.edu Go to course (opens in a new tab)