Saltar a contenido

Cross-cutting topics

Every path covers the big systems concepts from its own angle. These indexes let you read the same concept across paths - three takes on garbage collection, four on concurrency, five on observability - without hunting through nine syllabi.

Topic What you'll find
Garbage collection Tracing, generational, concurrent, regional. Go's tricolor, Java's G1/ZGC, Python's refcount+gen, the kernel's slab+buddy.
Concurrency Channels, locks, atomics, async, virtual threads, GIL, futex. Five languages, one set of hard problems.
Memory models Happens-before across JMM, Go MM, Rust orderings, and the Linux kernel. Why volatile is not enough - anywhere.
Observability pprof, JFR, py-spy, perf, eBPF. Always-on profiling as a discipline.
FFI Calling C from everything. cgo, Panama, ctypes/cffi, Rust extern. When to reach for each.
Build systems & toolchains Cargo, Maven/Gradle, go build, pip/uv, kbuild, BuildKit. Six builds, six bets.
Error handling Values vs exceptions. Go errors, Rust Result, Java checked/unchecked, Python EAFP, kernel errno.
Testing Unit, integration, property-based, fuzz, benchmark. JMH, jcstress, hypothesis, loom, syzkaller.
Networking Sockets, HTTP, gRPC across Go, Java, Rust, Python, kernel. The IO-multiplexing story (epoll, io_uring).
Async models Goroutines, Loom virtual threads, Tokio futures, asyncio coroutines, kernel I/O. Preemptive vs cooperative.
Type systems Nominal vs structural, generics-via-monomorphization vs erasure, sum types, null vs Option.
Distributed consensus Raft across the three capstones that implement it. Reading the paper, picking an implementation.
Performance methodology Beyond tools - USE/RED, latency vs throughput, percentiles, Amdahl, when to stop.
Containerization & deployment The build → image → registry → cluster pipeline. Bridges language paths to Containers + Kubernetes.

How to read these pages

Each cross-topic page follows the same shape:

  1. Why it matters - the one paragraph framing across paths.
  2. The lens, per path - one short section per relevant curriculum, with links into the source weeks.
  3. The contrasts that teach - what changes when you move between languages/runtimes.
  4. What to read first - a single recommended starting point.

The goal is not to summarize each path's chapter - it's to give you the map between them so you can decide which lens to learn first and which to come back to.