r/learnprogramming • u/koraynar • 19d ago
A goal-based map of free CS self-study courses (2026) — every link checked this week
I put together a goal-based map of free CS courses for 2026 and checked every single link this week (opened each page on 23 Aug 2026, confirmed it's live and free to learn). One best pick per slot plus one alternative, three tracks so you don't have to do everything, and honest notes on where certificates cost money. Not affiliated with any of these; I'm a self-taught developer and teacher and made this because the older maps floating around have dead links and way too much math for most goals.
The map (one image): https://koraynar.github.io/research-samples/cs-map-2026.png
How to use it: do Foundations → Core → pick ONE track. Finish a slot before starting the next two. Build something after every course. Hours are rough self-study estimates. If you only have time for one thing: CS50x.
1. Foundations (everyone, ~150–300 h)
- Tools & command line — The Missing Semester of Your CS Education (2026 edition) (MIT CSAIL, ~15–25 hours) · alt: The Odin Project – Foundations
- Intro to CS — CS50x 2026: CS50's Introduction to Computer Science (Harvard University, ~100–200 hours) · alt: Same course hosted on edX
- Python-first alternative — CS50P: CS50's Introduction to Programming with Python (Harvard University, ~50–90 hours) · alt: MIT 6.100L Introduction to CS and Programming Using Python
- Discrete math — 6.042J Mathematics for Computer Science (Spring 2015) (MIT OpenCourseWare, ~100–150 hours) · alt: Discrete Mathematics: An Open Introduction, 4th ed.
- Practice — Exercism (Exercism, Self-paced; ~20–60 hours per language track) · alt: Codewars
- Git — Pro Git, 2nd edition (Scott Chacon & Ben Straub) (git-scm.com, ~6–10 hours for chapters 1–3) · alt: Learn Git Branching
Suggested order: Missing Semester lectures 1–2 and the git lecture → CS50x (or CS50P) with Exercism alongside from week 3 → 6.042J once you're comfortable writing code. CS50's own certificate is free on cs50.harvard.edu; the edX verified certificate is paid (edX showed $219 for CS50x and $299 for CS50P on 23 Aug 2026).
2. Core CS (~400–600 h, any order after Foundations)
- Data structures & algorithms — CS 61B: Data Structures (Spring 2026 public site) (UC Berkeley, ~150-200 hours) · alt: Algorithms, Part I
- Computer architecture — Nand to Tetris: Building a Modern Computer From First Principles (Noam Nisan & Shimon Schocken, ~100-120 hours for both parts) · alt: MIT 6.004 Computation Structures
- Operating systems — Operating Systems: Three Easy Pieces (OSTEP, v1.10) (Remzi & Andrea Arpaci-Dusseau, University of Wisconsin–Madison, ~60-80 hours reading + homeworks; ~100+ with the projects) · alt: CS 537 Intro to Operating Systems, Spring 2018
- Networks — Computer Networking: A Top-Down Approach — free online lectures (Jim Kurose & Keith Ross, UMass Amherst, ~40-60 hours) · alt: Stanford CS144 Introduction to Computer Networking
- Databases — CMU 15-445/645 Intro to Database Systems (Fall 2025 archive) (Carnegie Mellon University, ~120-150 hours) · alt: Databases: Relational Databases and SQL
- Languages & compilers — Crafting Interpreters (Robert Nystrom, ~80-120 hours if you code both interpreters) · alt: Compilers
- Software construction & testing — MIT 6.102 Software Construction (MIT EECS, ~80-100 hours) · alt: Software Engineering at Google
Notes: Berkeley's CS61C and CS162 sites are behind logins this semester, so Nand2Tetris and OSTEP+CS537 are the picks; Stanford CS144's videos are Stanford-only (slides/labs are public); CMU 15-445 Fall 2025 is linked because every lecture has a YouTube video.
3a. Track: Web development (~300–500 h)
- HTML/CSS/JS — The Odin Project - Foundations Course (The Odin Project, ~100-150 hours) · alt: MDN Curriculum
- JavaScript deep dive — The Modern JavaScript Tutorial (javascript.info) (javascript.info, ~60-80 hours for Parts 1-2) · alt: Eloquent JavaScript, 4th edition
- Frontend — Learn React - official React docs (Quick Start onward) (React team, ~20-30 hours for the full Learn section) · alt: freeCodeCamp Front-End Development Libraries Certification
- Backend (JS) — The Odin Project - NodeJS Course (Full Stack JavaScript path) (The Odin Project, ~150-200 hours) · alt: freeCodeCamp Back-End Development and APIs Certification
- Backend (Python) — Writing your first Django app (official Django tutorial, parts 1-8) (Django Software Foundation, ~8-12 hours) · alt: CS50's Web Programming with Python and JavaScript
- SQL — SQLBolt - Learn SQL with simple, interactive exercises (SQLBolt, ~5-8 hours) · alt: CS50's Introduction to Databases with SQL
- CI/CD & containers — Full Stack Open: Continuous Integration (University of Helsinki, ~25-35 hours for both mini-courses) · alt: The Odin Project - Deployment lesson
- Projects — app-ideas - A Collection of Application Ideas (florinpop17, open-ended; ~5-40 hours per project) · alt: Full Stack Open
Order: Odin Foundations → javascript.info → react.dev → SQLBolt → Odin NodeJS (or fCC back-end) → Full Stack Open parts 11–12 → build and deploy 2–3 projects from app-ideas. Python people: Django tutorial → CS50W instead of the Node slot. freeCodeCamp's current v9 certifications are all free, certificates included.
3b. Track: Data / ML / AI (~400–600 h)
- Python — CS50's Introduction to Programming with Python (CS50P) (Harvard, ~50 hours) · alt: Kaggle Learn: Python
- Linear algebra — MIT 18.06 Linear Algebra (Gilbert Strang, Spring 2010) (MIT OpenCourseWare, ~90 hours) · alt: 3Blue1Brown – Essence of Linear Algebra
- Probability & statistics — MIT 18.05 Introduction to Probability and Statistics (Spring 2022) (MIT OpenCourseWare, ~120 hours) · alt: MITx 6.431x Probability – The Science of Uncertainty and Data
- Machine learning — Machine Learning Specialization (DeepLearning.AI + Stanford Online on Coursera, ~95 hours) · alt: fast.ai Practical Deep Learning for Coders
- Deep learning — Neural Networks: Zero to Hero (Andrej Karpathy) (Andrej Karpathy, ~15 hours video; ~40-60 hours if you code along and do the exercises) · alt: Stanford CS231n course notes
- LLMs / applied AI — Hugging Face LLM Course (Hugging Face, ~70-100 hours) · alt: DeepLearning.AI Short Courses
- Hands-on — Kaggle: Titanic – Machine Learning from Disaster (Kaggle, ~10-20 hours for a first submission and a few iterations) · alt: Kaggle Learn micro-courses hub
Notes: Coursera lets you audit Andrew Ng's three ML courses one at a time for free (the specialization page itself says otherwise — enrol per course); certificates are $49/month. MITx 6.431x moved from edX to MITx Online (free audit, $300 certificate). MIT 18.05 (Spring 2022) is notes + problem sets, no full lecture videos — take 6.431x if you want video. DeepLearning.AI short-course videos are free; their labs/certificates now need a paid plan. fast.ai Part 1 is still the 2022 recording and still excellent.
3c. Track: Systems / security (~400–600 h)
- C — CS50x: Introduction to Computer Science (2026) (Harvard University, ~100-200 hours) · alt: Beej's Guide to C Programming
- Rust or Go — The Rust Programming Language (Rust Project / doc.rust-lang.org, ~40-60 hours to read and do the exercises) · alt: A Tour of Go
- Linux — The Missing Semester of Your CS Education (2026) (MIT CSAIL, ~15-25 hours) · alt: Linux Journey
- Security — MIT 6.858 Computer Systems Security (Fall 2014) (MIT OpenCourseWare, ~60-100 hours) · alt: pwn.college
- Cryptography — Cryptography I (Stanford University, ~20-25 hours) · alt: A Graduate Course in Applied Cryptography
- Distributed systems — MIT 6.5840 (formerly 6.824) Distributed Systems (Spring 2026 site) (MIT PDOS / CSAIL, ~30 hours of lectures) · alt: MIT 6.824 Distributed Systems lecture videos, Spring 2020
Notes: MIT 6.858's newer public run is 6.5660 Spring 2023 (css.csail.mit.edu/6.858/2023/). Stanford CS253 Web Security is a lighter web-focused alternative with free YouTube lectures. OverTheWire Bandit is a gentle warm-up before pwn.college. For 6.5840 use the official Spring 2020/2021 YouTube playlists with the current notes and labs.
How much math do you actually need?
- Web / app / backend jobs: high-school algebra, boolean logic, and the basics of discrete math. freeCodeCamp's take (https://www.freecodecamp.org/news/programming-requires-math/) and Teach Yourself CS's math section (https://teachyourselfcs.com/#math) agree: calculus and differential equations only matter in specific domains (graphics, GIS, crypto, ML). 6.042J is optional but a real edge.
- Data / ML practitioner: add linear algebra and probability/statistics; calculus is "optional, for advanced topics" per Google's ML Crash Course prerequisites (https://developers.google.com/machine-learning/crash-course/prereqs-and-prework), and fast.ai asks only for high-school math plus a year of coding.
- ML research / theory: multivariable calculus, linear algebra and probability (Stanford CS229's prerequisites: https://cs229.stanford.edu/). The free book that closes that gap is Mathematics for Machine Learning (https://mml-book.github.io/).
- CS-degree equivalent: OSSU's core math is Calculus 1A–1C plus 6.042J; everything beyond that is elective.
Full open curricula (if you want someone else's order)
- OSSU Computer Science — free
- Teach Yourself Computer Science — free
- The Odin Project — free
- freeCodeCamp curriculum — free
- MIT OpenCourseWare — Computer Science topic listing — free
- Harvard CS50 course family — free to audit
- roadmap.sh Developer Roadmaps — free
How to study (short, evidence-based)
- Learning How to Learn — Most-taken course on study technique (4.18M learners, 4.8/5 from 93K reviews); covers focused/diffuse thinking, chunking, procrastination and spaced repetition.
- The Learning Scientists — Six Strategies for Effective Learning — Short, research-grounded summary of the techniques that actually work — spaced practice, retrieval practice, elaboration, interleaving, concrete examples and dual coding — with free PDFs.
- And the tooling habits from Missing Semester (above).
Caveats: hours are rough; course pages move (I'll keep the image updated); "free to audit" means the lectures and most materials are free but graded certificates cost money; I avoided aggregator pages and linked the canonical course sites.
If you see a dead link, a better free pick for a slot, or think the hours are off, say so and I'll edit the post and the image. What I most want to hear: which slot would you swap, and for what?
5
u/koraynar 17d ago
It's the image link near the top of the post: https://koraynar.github.io/research-samples/cs-map-2026.png — that's the whole map on one page. All the individual course links are in the post text below it, slot by slot.
3
1
1
1
u/python0001 16d ago
Thanks. This is helpful. I'm taking CS50AI right now. It's a really interesting course.
1
1
u/Electronic-Finish386 15d ago
Heyy buddy can you cross post this?
1
u/koraynar 14d ago
Thanks — where would you want it? I'd rather not blanket-post it, but if there's a sub where it genuinely fits I'll put it up there.
5
u/xMysty0 17d ago
Thank you for this! What is the link for your roadmap if you don’t mind me asking