Computer Systems Mastery
From transistors to a running Rails app — how computers actually work.
**For:** experienced web engineers without a formal CS degree. You build production web applications. This curriculum teaches you what happens beneath the frameworks, libraries, and abstractions you use every day.
Join the path to enroll in courses — they unlock in order as you finish each one.
-
1
How Computers Work — The Big Picture
-
2
The C Programming Language
-
3
Computer Architecture — From Gates to CPU
-
4
Operating Systems — Processes, Memory & File Systems
-
5
Computer Networks — From Bits to HTTP
-
6
Systems Programming — UNIX, Kernel & Low-Level
-
7
Theory of Computation — Languages & Machines
-
8
Compilers & Interpreters — Building Languages
-
9
Computer Systems Integration — CSAPP Deep Dive
Computer Systems Media Track #
Companion to: COMPUTER_SYSTEMS_MASTERY_CURRICULUM.md
Purpose: Video lectures, YouTube channels, documentaries, and podcasts paired to each module. Systems concepts often click better visually — watching a CPU execute instructions or packets traverse a network makes the abstract concrete.
Last updated: April 30, 2026
How to Use This File #
-
Watch alongside reading. Ben Eater's breadboard videos while doing Nand2Tetris. CSAPP lectures while reading CSAPP chapters. Kleppmann's lectures while reading DDIA in your other curricula.
-
Break weeks. Between major modules, watch a documentary or fun talk to let ideas settle.
-
Mood tags: (Technical), (Inspiring), (Historical), (Fun), (Deep Dive)
Module 0: How Computers Work — The Big Picture #
| Resource | Type | Duration | Mood | Why |
|---|---|---|---|---|
| Crash Course Computer Science (41 videos) | YouTube Series | 10 min each | Fun | Animated overview of the entire CS stack. Perfect companion to Code: The Hidden Language. |
| Ben Eater: How Do Computers Calculate? | Video | 15 min | Technical | Binary addition with logic gates on a breadboard. Makes Code Ch 8-13 visual. |
| The Machine That Changed the World (1992 documentary) | Documentary | 5 episodes | Historical | The history of computing from Babbage to the internet. Dated but foundational. |
Module 1: The C Programming Language #
| Resource | Type | Duration | Mood | Why |
|---|---|---|---|---|
| CS50 2024 — Lectures 1-5 (C) | YouTube | 2 hrs each | Inspiring | David Malan teaches C to beginners with incredible energy. The memory, pointers, and data structures lectures are particularly good. |
| Jacob Sorber: C Programming playlist | YouTube Channel | 10-20 min each | Technical | Practical C programming: pointers, memory, file I/O, systems calls. A working professor who explains clearly. |
| Brian Kernighan on C (Computerphile) | Interview | 10 min | Historical | The co-author of K&R reflects on C's design. Watch before reading the book. |
| Linus Torvalds on C vs C++ (various interviews) | Interviews | varies | Fun | Linus's opinions on C are entertaining and informative. |
Module 2: Computer Architecture — From Gates to CPU #
| Resource | Type | Duration | Mood | Why |
|---|---|---|---|---|
| Ben Eater: Building an 8-bit Breadboard Computer | YouTube Series | 10-20 min each | Technical | THE visual companion to Nand2Tetris. Build a real CPU with breadboards, wires, and LEDs. See logic gates, ALU, clock, RAM, and control logic working physically. 40+ videos. Essential. |
| Nand2Tetris lecture videos (Coursera) | Course | 2-3 hrs/week | Technical | The authors walk through each project. Watch alongside the book. |
| MIT 6.004 Computation Structures (OCW) | Course | varies | Deep Dive | More rigorous treatment of pipelining, caching, virtual memory. Use selectively. |
| Computerphile: How Computers Add (series) | YouTube | 10 min each | Technical | Animated explanations of binary addition, ALU design, and CPU operation. |
| Sebastian Lague: How Computers Work (2024) | Video | 1 hr | Inspiring | Beautiful visual explanation of computing from gates to programs. Modern production quality. |
Module 3: Operating Systems #
| Resource | Type | Duration | Mood | Why |
|---|---|---|---|---|
| OSTEP Authors' Lecture Videos (if available) | Course | varies | Technical | Check the OSTEP website for companion lectures by Arpaci-Dusseau. |
| CMU 15-213 CSAPP Lectures (YouTube) | YouTube | 1.5 hrs each | Deep Dive | Processes, virtual memory, concurrency from the CSAPP perspective. Watch the processes and virtual memory lectures. |
| MIT 6.828 xv6 lectures (YouTube) | YouTube | varies | Deep Dive | MIT's OS engineering course. Build an operating system. Watch if you want to go deeper than OSTEP. |
| Computerphile: What is an Operating System? | Video | 10 min | Technical | Quick overview before diving into OSTEP. |
| Brian Will: Unix System Calls playlist | YouTube | 10-15 min each | Technical | Practical system call demonstrations: fork, exec, wait, pipe, dup2. Watch alongside OSTEP. |
Module 4: Computer Networks #
| Resource | Type | Duration | Mood | Why |
|---|---|---|---|---|
| Kurose & Ross lecture videos (YouTube) | YouTube | 1.5 hrs each | Technical | The authors of the standard networking textbook. Application layer, transport layer, network layer, link layer. The best free networking course. |
| Computerphile: Networking playlist | YouTube | 10-15 min each | Technical | DNS, TCP, UDP, routing, HTTP explained clearly. Watch alongside Head First Networking. |
| Ben Eater: Networking tutorial | YouTube Series | 10-15 min each | Technical | Low-level networking with real hardware. ARP, IP, TCP packet analysis. |
| Julia Evans: Networking! (talk) | Talk | 30 min | Fun | Julia Evans makes networking fun and accessible. Packet captures, DNS debugging, socket programming. |
| Warriors of the Net (1999 animated film) | Animation | 13 min | Fun | Animated journey of a packet across the internet. Old but charming and accurate. Watch for fun. |
Module 5: Systems Programming — UNIX #
| Resource | Type | Duration | Mood | Why |
|---|---|---|---|---|
| Brian Kernighan: UNIX — A History and a Memoir (talks) | Talk | 60 min | Historical | Kernighan tells the story of UNIX at Bell Labs. Fascinating history from someone who was there. |
| AT&T Archives: The UNIX Operating System (1982) | Documentary | 27 min | Historical | Dennis Ritchie and Ken Thompson demonstrate UNIX. Historic footage. |
| Computerphile: UNIX and Linux playlist | YouTube | 10 min each | Technical | Pipes, file descriptors, processes, permissions explained. |
| Gary Bernhardt: A Whole New World (PyCon 2012) | Talk | 30 min | Inspiring | The gap between high-level languages and the system beneath. Eye-opening. |
| Bryan Cantrill: The Summer of Rust (talks) | Talk | 60 min | Inspiring | Systems programming culture, debugging production systems, the joy of understanding the machine. |
Module 6: Theory of Computation #
| Resource | Type | Duration | Mood | Why |
|---|---|---|---|---|
| MIT 18.404J Theory of Computation (OCW) | Course | varies | Deep Dive | Michael Sipser's course. DFA, NFA, CFG, Turing machines, decidability, complexity. The best free theory course. |
| Computerphile: Halting Problem | Video | 8 min | Technical | Clear explanation of the Halting Problem. Watch before the formal proof. |
| Computerphile: P vs NP | Video | 12 min | Technical | Why P vs NP is the biggest open problem in CS. |
| Brian Kernighan: SICP and Beyond (talk) | Talk | 60 min | Historical | On SICP's legacy and programming language design. |
| GEB audiobook or lecture (if available) | Various | varies | Philosophical | Hofstadter's ideas explained visually. Search for GEB lectures or animations. |
| Coursera: Automata Theory (Ullman, Stanford) | Course | 8-10 hrs | Technical | Jeff Ullman teaches automata. Covered by a Coursera Plus subscription. |
Module 7: Compilers & Interpreters #
| Resource | Type | Duration | Mood | Why |
|---|---|---|---|---|
| Bob Nystrom: Crafting Interpreters (conference talk) | Talk | 45 min | Inspiring | The author explains why he wrote the book and what you learn by building interpreters. |
| Stanford Compilers (Alex Aiken) on Coursera | Course | 10-12 weeks | Technical | Academic compiler course. Lexing, parsing, type checking, code generation. |
| Nand2Tetris Part 2 (Coursera) | Course | 6 weeks | Technical | Build the compiler and OS for your Nand2Tetris computer. |
| Destroy All Software: A Compiler From Scratch | Screencast | 30 min | Technical | Build a complete compiler in 30 minutes. Dense but brilliant. |
| Thorsten Ball: Writing An Interpreter In Go (talk) | Talk | 40 min | Practical | The author explains Pratt parsing and interpreter design. |
| Terence Parr: ANTLR and parsing (talks) | Talk | 60 min | Technical | Parser generator theory and practice. |
Module 8: CSAPP Integration #
| Resource | Type | Duration | Mood | Why |
|---|---|---|---|---|
| CMU 15-213 Full Course (YouTube) | YouTube | 1.5 hrs each | Deep Dive | The full CSAPP course from CMU. 27 lectures covering every chapter. Watch the data representation, assembly, and virtual memory lectures at minimum. |
| Matt Godbolt: What Has My Compiler Done for Me Lately? (CppCon) | Talk | 50 min | Technical | The creator of Compiler Explorer shows how compilers optimize code. Directly relevant to CSAPP Ch 3 and Ch 5. |
| Compiler Explorer (godbolt.org) | Tool | ongoing | Technical | Paste C code, see assembly output. THE tool for CSAPP Ch 3 exercises. |
Podcasts #
| Podcast | Focus | Why |
|---|---|---|
| Oxide and Friends | Systems programming, hardware, OS | Bryan Cantrill and friends discuss systems topics. Deep, opinionated, fun. |
| Systems with JT | Systems programming, Nushell, Rust | Practical systems discussions. |
| CoRecursive | Deep engineering stories | Long-form stories about systems decisions and their consequences. |
| Computer Science Podcast (Lex Fridman) | CS interviews | Interviews with Kernighan, Knuth, Torvalds, and other systems legends. |
| Signals and Threads (Jane Street) | Systems, FP, engineering | Deep technical discussions about systems at Jane Street. |
YouTube Channels (Subscribe) #
| Channel | Focus | Why |
|---|---|---|
| Ben Eater | Computer architecture, networking | THE hardware channel. Breadboard computers, networking, GPU from scratch. |
| Computerphile | CS concepts | Accessible explanations of CS topics by academics. |
| Sebastian Lague | Visual computing | Beautiful visualizations of computing concepts. |
| Low Level Learning | C, assembly, systems | Short, clear videos on low-level topics. |
| Jacob Sorber | C programming, systems | A professor teaching C and systems programming on YouTube. |
| 3Blue1Brown | Math and CS visualization | When you need a visual explanation of math concepts in theory of computation. |
Documentaries & Films #
| Title | Duration | Mood | Why |
|---|---|---|---|
| Revolution OS (2001) | 85 min | Historical | The story of Linux, GNU, and open source. Features Torvalds, Stallman, Raymond. |
| The Code: Story of Linux (2001) | 60 min | Historical | Finnish documentary about Linux's creation. |
| BBS: The Documentary (2005) | 8 episodes | Historical | The history of bulletin board systems. Early networking culture. |
| Lo and Behold: Reveries of the Connected World (2016) | 98 min | Philosophical | Werner Herzog explores the internet. Beautiful, strange, thought-provoking. |
| The Internet's Own Boy: The Story of Aaron Swartz (2014) | 105 min | Inspiring | The story of Aaron Swartz — RSS, Reddit, Creative Commons, and the fight for open access. |
Watch one video per day during modules. Subscribe to 3-4 channels. Systems knowledge compounds when you see it from multiple angles.
Computer Systems Community Guide #
Companion to: COMPUTER_SYSTEMS_MASTERY_CURRICULUM.md
Purpose: Forums, newsletters, blogs, conferences, and projects for systems topics. Systems knowledge grows through community — reading kernel mailing lists, following OS researchers, and studying real system internals.
Last updated: April 30, 2026
Newsletters & Blogs #
Must-Follow (Systems-Focused) #
| Blog/Newsletter | Author/Source | Focus | Why |
|---|---|---|---|
| Julia Evans | Julia Evans | Networking, Linux, debugging | Makes complex systems concepts accessible. Zines, comics, and clear blog posts. Packet captures, system calls, DNS debugging. The best systems blog for working programmers. |
| Dan Luu | Dan Luu | Systems performance, engineering culture | Data-driven posts on how hardware and software actually behave. Cache performance, memory latency, the gap between theory and practice. |
| Eli Bendersky | Eli Bendersky | Compilers, C, Go, systems | Deep technical posts on parsing, compiler construction, and low-level programming. Excellent companion to Modules 6-7. |
| Brendan Gregg | Brendan Gregg | Performance, Linux, tracing | THE performance analysis expert. Flame graphs, perf, BPF, DTrace. Systems Performance book author. |
| Mara Bos | Mara Bos | Concurrency, atomics, systems | Rust Atomics and Locks author. Clear posts on concurrency primitives and OS internals. |
| Fabien Sanglard | Fabien Sanglard | Architecture, game engines, systems | Deep dives into real system architectures (Doom, Quake, iOS, etc.). Beautifully illustrated. |
| Cloudflare Blog | Cloudflare Engineering | Networking, security, performance | Production networking at massive scale. TCP optimization, DNS, TLS, DDoS. Directly relevant to Module 4. |
| Fly.io Blog | Fly.io Engineering | Systems, networking, Elixir | Deep systems posts about running infrastructure. Cross-references with your Elixir curriculum. |
Worth Following #
| Blog/Newsletter | Focus | Why |
|---|---|---|
| LWN.net | Linux kernel, systems | The authoritative Linux kernel news source. Kernel development, system calls, new features. |
| Beej's Guides | C, networking, IPC | Free, excellent guides for C programming, sockets, and IPC. Reference throughout curriculum. |
| OSDev Wiki | OS development | Community wiki for operating system development. Reference for Module 3 deep dives. |
| Papers We Love | CS papers | Reading groups for influential CS papers. Systems papers are well-represented. |
| The Morning Paper (archive) | CS paper summaries | Adrian Colyer's daily CS paper summaries. The archive is gold for systems papers. |
| Hacker News | General tech | Systems posts regularly hit the front page. Comments from kernel developers, compiler engineers, and networking experts. |
Forums & Communities #
| Community | Platform | Focus | Why Join |
|---|---|---|---|
| r/osdev | OS development | Active community building operating systems. Projects, questions, tutorials. | |
| r/systems | Systems engineering | Discussions about OS, networking, and distributed systems. | |
| r/compsci | CS theory | Theory of computation, algorithms, complexity discussions. | |
| r/compilers | Compilers | Compiler construction discussions. Helpful for Module 7. | |
| r/netsec | Network security | Security-focused networking discussions. | |
| OSDev Forums | Forum | OS development | Dedicated community for building operating systems. |
| Nand2Tetris Community | Website | Computer architecture | The Nand2Tetris project community. Forums, Q&A, project help. |
| Lobsters | Link aggregator | Systems, PL theory | Higher signal-to-noise ratio than HN for systems and PL topics. |
Conferences (Recordings Available Free) #
| Conference | Focus | How to Access | Why |
|---|---|---|---|
| USENIX OSDI | Operating systems | YouTube (free) | Top OS research conference. Papers on file systems, kernels, scheduling. |
| USENIX NSDI | Networked systems | YouTube (free) | Networking research in practice. CDNs, DNS, load balancing papers. |
| SIGCOMM | Computer networks | ACM DL (some free) | THE networking research conference. Protocol design, routing, congestion control. |
| SOSP / OSDI | OS and systems | YouTube (free) | Alternating top OS conferences. Landmark systems papers are presented here. |
| Strange Loop | Systems, languages | YouTube archive (free) | Systems talks by Hickey, Kleppmann, Cantrill. Ended 2023 but archive is gold. |
| CppCon | C++, systems, performance | YouTube (free) | Systems performance talks. Matt Godbolt's compiler talks live here. |
| FOSDEM | Open source systems | YouTube (free) | Free European open source conference. Kernel, networking, compiler tracks. |
| linux.conf.au | Linux, systems | YouTube (free) | Linux kernel and systems conference. |
Open-Source Projects to Study #
Study these for their architecture and implementation, not just their code.
Operating Systems & Kernels #
| Project | Language | Why Study |
|---|---|---|
| xv6 | C | MIT's teaching OS. Simple, readable, well-documented. THE reference for Module 3 deep dives. |
| Linux kernel | C | The world's most important software project. Read specific subsystems (scheduler, VFS, networking) after OSTEP. |
| SerenityOS | C++ | A complete OS built from scratch by one person (initially). Browser, GUI, kernel. Inspiring. |
Compilers & Interpreters #
| Project | Language | Why Study |
|---|---|---|
| CRuby | C | Ruby's own interpreter. Read parse.y (parser), compile.c (compiler), vm.c (YARV VM). Directly relevant to Module 7. |
| Lua | C | Tiny, elegant, embeddable interpreter. ~20K lines of C. Study its VM design after Crafting Interpreters. |
| TinyCC | C | A tiny C compiler by Fabrice Bellard. Compiles C to x86 in one pass. Study for compiler simplicity. |
| LLVM | C++ | The compiler infrastructure behind Clang, Rust, Swift. Study the IR and optimization passes. |
Networking #
| Project | Language | Why Study |
|---|---|---|
| mTCP | C | Userspace TCP stack. See TCP implementation in ~20K lines. |
| curl | C | The most popular HTTP client. Study its connection handling, TLS negotiation, and protocol support. |
Essential Readings (Papers & Articles) #
| Paper/Article | Author | Year | Module | Why |
|---|---|---|---|---|
| Reflections on Trusting Trust | Ken Thompson | 1984 | 7 | Can you trust your compiler? The most famous short CS paper. 3 pages. |
| The UNIX Time-Sharing System | Ritchie & Thompson | 1974 | 5 | The original UNIX paper. See the design philosophy from the source. |
| An Experimental Time-Sharing System | Corbato et al. | 1962 | 3 | Where time-sharing began. |
| End-to-End Arguments in System Design | Saltzer, Reed, Clark | 1984 | 4 | THE networking design principle. Why put functionality at the endpoints, not in the network. |
| A Note on the Confinement Problem | Lampson | 1973 | 3 | Information flow control in OS. Short and influential. |
Tools to Learn and Use #
| Tool | Category | Why |
|---|---|---|
| GDB/LLDB | Debugging | Debug C programs. Essential for Modules 1, 3, 5. |
| Valgrind | Memory checking | Detect memory leaks, use-after-free, buffer overflows. Essential for Module 1. |
| strace/dtrace | System call tracing | See every system call a program makes. Essential for Modules 3, 5. |
| tcpdump/Wireshark | Packet capture | Capture and analyze network traffic. Essential for Module 4. |
| Compiler Explorer (godbolt.org) | Compiler output | See assembly output of C code. Essential for Module 8. |
| perf | Performance analysis | Linux performance counters, flame graphs. Module 8. |
Books to Read for Fun (Not in the Curriculum) #
| Book | Author | Why |
|---|---|---|
| Hackers: Heroes of the Computer Revolution | Steven Levy | The culture of early computing. Fun, inspiring. |
| The Soul of a New Machine | Tracy Kidder | Pulitzer Prize winner. Building a minicomputer at Data General. |
| In the Beginning Was the Command Line | Neal Stephenson | The philosophy of operating systems. Short, witty. |
| Just for Fun | Linus Torvalds | Linus's autobiography. Light and fun. |
| Where Wizards Stay Up Late | Hafner & Lyon | The origin story of the internet. |
| Coders at Work | Peter Seibel | Interviews with legendary programmers (Knuth, Norvig, Zawinski, etc.). |
| UNIX: A History and a Memoir | Brian Kernighan | Kernighan's account of UNIX at Bell Labs. Essential history. |
Systems knowledge lives in communities. Follow 3 blogs. Read 1 paper per month. Subscribe to 2 channels. The mental models compound over years.