FIG_000 · curriculum v1.0 · 2026 open source · MIT

Course:
Computer Science

421 lessons. 20 phases. Every major system built from first principles before production source gets opened.

Maintained by Ritesh Rana and contributors. Run on your own machine.

How this works

Most computer science material teaches in scattered pieces. A data-structures class here, an OS class there, a databases class somewhere else. The pieces rarely line up. You hear “B-tree” in one course and do not see it again until a production query plan is slow.

This curriculum is the spine. 20 phases, 421 lessons, and the languages used where they fit: C, C++, Rust, Go, Python, Haskell, SQL, RISC-V assembly, and TLA+. Discrete math sits at one end, distributed systems and capstones at the other. Allocator. Parser. Scheduler. CPU pipeline. TCP state machine. Raft. B-tree. You build the smaller version before reading the production one.

Each lesson runs the same loop: read the problem, understand the model, write the code, compare against the production version, ship the artifact. No five-minute videos, no copy-paste deploys, no hand-holding. Free, open source, and built to run on your own laptop.

Current Progress
Finished Lessons 0 / 0
Phases 0 / 0
Languages 9+
Glossary Terms ···
Curriculum · 20 phases · 421 lessons
Tap a phase to expand its lessons. Each one ships when its math, code, and test are all written.
Complete In progress Planned
Colophon

The entire curriculum is on GitHub. Clone it, fork it, learn at your own pace. No paywall, no signup. Every lesson has runnable code or artifacts in the language that fits the concept best.

git clone https://github.com/ambicuity/course-computer-science.git