computer science
Free Computer Science Courses — A Curated Path
A curated path through all of computer science: every topic below is a hand-picked shortlist of the best free courses, books, and hands-on resources, each one checked and actually worth your time. No paywalls, no dead links, no filler.
A full computer-science education is scattered across university websites, free textbooks, and interactive tutorials. The hard part isn't access. It's knowing which resources are worth your time and what order to take them in. That's exactly what this hub solves: for each area of CS, the two or three resources that actually teach it well, curated instead of dumped, plus a sensible path through them. You can learn the real equivalent of a CS degree's core with the free material linked here, taught by the same professors and institutions behind the standard textbooks. New here? Start with Intro to CS, then Algorithms. Everything else branches from those two.
START HERE
Foundations
If you're new, begin here. These build the base everything else stands on.
- Introduction to CS →Harvard CS50 and other beginner-friendly starting points — your first real taste of programming and computing.2 picks · free
- Algorithms & Data Structures →The core CS material behind coding interviews and efficient software — Princeton, Stanford, and MIT courses.curated · free
- Statistics & Probability →The math foundation under data science and ML — taught by resources that build intuition first.curated · free
GO DEEPER
Core computer science
The classic pillars: how machines work, how languages work, and the theory beneath it all.
- Computer Systems →From transistors to distributed clusters — build a computer from scratch, then learn OSes and networks.3 layers · free
- Programming Languages & Compilers →Understand how languages themselves work — and build one — to become better in every language.curated · free
- Theoretical CS →What can be computed, what can't, and what's efficient — automata, complexity, and P vs. NP.curated · free
APPLIED & MODERN
Applied & specialized
Where CS gets exciting and practical: the fields hiring is hungry for.
- Machine Learning →Andrew Ng, fast.ai, and the university ML curricula — the best free way into the field everyone's hiring for.curated · free
- Artificial Intelligence →Search, reasoning, and the foundations of modern AI from top university courses.curated · free
- Computer Security →Learn to think like an attacker — systems-security courses plus legal, hands-on hacking labs.2 tracks · free
- Computer Graphics →How pixels become worlds — the math of rendering plus hands-on OpenGL and shader tutorials.2 tracks · free
- Specialized Topics →The frontiers — quantum computing and bioinformatics, where CS meets physics and biology.2 frontiers · free
THE FULL CURRICULUM
Want the whole degree, structured?
If you'd rather follow one complete, sequenced curriculum than assemble your own from the topics above, two community-built guides map out an entire self-taught CS education: which courses, in what order, and why.
- OSSU — Open Source Society University ↗A free, complete, community-maintained CS curriculum built entirely from free online courses — a full degree path, in order.github.com/ossu
- Teach Yourself Computer Science ↗A focused, opinionated free guide to the nine subjects every self-taught engineer should learn, with the best book and course for each.teachyourselfcs.com
HOW TO USE THIS
How to actually learn CS on your own
Self-teaching CS works (thousands of engineers have done it) but it fails in predictable ways. The winners treat free courses like real ones: a schedule, the problem sets, and finishing what they start. A sensible order is Intro → Algorithms & Data Structures → a bit of Systems and Discrete Math → then specialize (ML, security, graphics, whatever pulls you). Above all, build projects alongside the courses; theory without application doesn't stick.
FAQ
Frequently asked questions
Can I learn computer science for free without a degree?
Yes. World-class universities publish full CS courses for free, and structured guides like OSSU and Teach Yourself CS map out a complete self-taught curriculum. Many successful engineers are self-taught, though it requires discipline and a portfolio of real projects.
In what order should I learn computer science topics?
A sensible order is introduction to CS, then algorithms and data structures, then some computer systems and discrete math, and then specializing into areas like machine learning, security, or graphics. Building projects alongside the courses throughout is essential.
How long does it take to learn CS on your own?
Learning the core of computer science to a job-ready level typically takes one to two years of consistent, part-time study. You can grasp programming fundamentals in a few months, but breadth across algorithms, systems, and projects takes longer.
What is OSSU?
OSSU, or Open Source Society University, is a free, community-maintained computer-science curriculum assembled entirely from free online courses. It provides a complete, ordered degree-equivalent path for self-taught learners who want structure.
Are these free courses as good as a paid degree?
The course material is often identical, since much of it comes from the same top universities. A degree adds structure, credentials, and networking, but for learning the actual computer science, these free resources cover the same ground when paired with real projects.