Start here

Choose your first step without getting lost.

Pick the description that sounds like you. Each path gives a first course, first lessons, what to skip, and what comes next.

Advanced6.006-spring-2020

I want algorithms

Start 6.006 only after Python basics and early 6.042J proof/graph material.

What to skip for now

Do not start here as a complete beginner; the course assumes programming maturity.

Next step

Pair lectures with problem sessions and selected assignments.

Intermediate6.0002-fall-2016

I want data science / finance / AI

Start 6.0002 after Python basics. Use 6.042J probability/counting and 18.01 derivatives as references.

What to skip for now

Do not try to finish every math course before touching modeling; use prerequisites just in time.

Next step

After 6.0002, deepen probability, calculus, and algorithms depending on your path.

Still unsure?

Follow the full roadmap. It starts with beginner programming and only adds math, data, and algorithms when they become useful.

View Full Roadmap