MIT · on MIT OpenCourseWare

Introduction to Computer Science and Programming in Python (6.0001)

4.8(12,000) on MIT OpenCourseWare·3.5M enrolled
Beginner 35 hours EnglishFREE
SkillsPythonAlgorithmic thinkingRecursionObject-oriented programmingComputational problem solving

Is this course right for you?

Our take
Worth it if you want to understand how programming works, not just copy Python snippets. It is free from MIT, with no certificate at the end.

Good for: beginners who want real CS fundamentals, and self-taught coders filling in the theory.

Skip if: you want applied data-science libraries, a gentle pace, or a certificate.

What you are paying for in time is computational thinking: breaking a problem down, reasoning about algorithms, knowing why code is correct. That focus is exactly what self-taught Python users tend to miss, and it makes everything you learn afterwards easier. The trade-off is that it moves at MIT's pace and expects you to do the problem sets, not watch passively.

It is not an applied or data-science course, so you will not touch pandas or real-world libraries here, and there is no credential to show for it. The recordings are a few years old and use an older Python, but the fundamentals it teaches have not changed. Come for the thinking, add an applied course after.

Comparison · LBS

Compare alternatives for Introduction to Computer Science and Programming in Python (6.0001)

Same topic, different options. We surface the trade-offs others hide so you can pick the course that actually fits your time, budget, and goals.
MIT OpenCourseWare4.8(12,000)
Introduction to Computer Science and Programming in Python (6.0001)
Price
Free
Completely free, openly licensed — no certificate
Duration
35 hrs
Level
Beginner
Certificate
freeCodeCamp4.7(6,200)
Scientific Computing with Python Certification
Price
Free
Completely free, forever
Duration
300 hrs
Level
Intermediate
Certificate
Course Certificate
Khan Academy4.7(5,100)
Intro to Computer Programming
Price
Free
Completely free, forever
Duration
15 hrs
Level
Beginner
Certificate
freeCodeCamp4.8(15,000)
JavaScript Algorithms and Data Structures Certification
Price
Free
Completely free, forever
Duration
300 hrs
Level
Intermediate
Certificate
Course Certificate
Prices & availability can change — confirm on the provider's site. We're not affiliated with any single provider.

About this course

MIT 6.0001 is the entry-level computer science course at MIT, used to introduce Python programming and computational thinking to students with no prior experience. Ana Bell, Eric Grimson, and John Guttag cover Python fundamentals (variables, functions, loops, conditionals), algorithm design, recursion, data structures (lists, tuples, dictionaries), and object-oriented programming — all in 12 weeks at the pace MIT students take it.

Instructor

AB
Ana Bell / Eric Grimson / John Guttag
MIT OpenCourseWare instructor
3.5M+ learners8 courses4.8 instructor rating

Taught by Ana Bell, Eric Grimson, and John Guttag — MIT EECS faculty who authored the textbook 'Introduction to Computation and Programming Using Python' that accompanies this course.

Frequently asked questions

No — OpenCourseWare gives you the lecture videos, problem sets and readings, but there's no autograder, deadlines or community. Many problem sets come with solutions so you can check your own work, but you'll need self-discipline. If you want grading and a cohort, the edX version (6.00.1x) provides that.

Yes, for what it teaches. The recordings are from around 2016 and use an older Python 3 version, but the fundamentals — variables, loops, functions, recursion, basic algorithms — haven't changed. You'll write modern Python fine afterwards; just don't expect the latest libraries or syntax niceties.

More than a pure coding course, but nothing advanced. MIT leans a little into computational thinking and some maths-flavoured problems, so comfort with secondary-school maths helps. The real challenge is the problem sets and thinking like a programmer, not the mathematics itself.
Free
to audit
Enroll now