applied-cs-projects
52 from-scratch systems in Rust, Python & Go — the implementations behind the Applied Computer Science book. Distributed systems, ML/AI infrastructure, databases, and language/OS internals.
A companion code repository for the 'Applied Computer Science' book containing 52 from-scratch projects spanning distributed systems, ML infrastructure, databases, and low-level systems like a mini OS and compiler.
Applied Computer Science — Projects is a collection of 52 hands-on software systems built from scratch. It accompanies a book of the same name, and whenever a chapter challenges you to "Build it," this repository is where you go. The projects span four major areas: distributed systems (like caches and job queues), machine-learning infrastructure (like RAG pipelines and inference engines), databases, and lower-level systems like a mini operating system and a compiler. The goal is to let you learn by reading and running real, working code instead of just reading about abstract concepts.
The collection is written in three programming languages: Python for most of the ML and data projects, Rust for the high-performance and low-level systems, and Go for a single microservice project. Every project is self-contained in its own folder with its own setup instructions, design document, and test suite. You can download any one project, run a standard install command, and immediately start running its tests to see how it works. The Python projects use a popular web framework called FastAPI, while the Rust projects follow a design pattern that emphasizes safety and performance.
The target audience is people who want to understand how complex backend and AI systems actually work under the hood. For example, if you are a founder or product manager building an AI feature, you could study the RAG baseline or the model routing layer to see what the underlying architecture looks like. If you want to understand how tools like Redis or Kafka function, you can explore the simplified Rust implementations here. It is essentially a reference library for anyone who wants to bridge the gap between textbook theory and production engineering.
A notable aspect of this repository is its honesty about scope. Some projects are complete, hardened services with built-in security features like API keys and rate limiting. Others, such as the minimal OS kernel or the GPU optimization work, are explicitly labeled as CPU-only teaching simulations. Each project includes a design document that clearly states what is fully functional versus what is simplified for learning, ensuring you always know exactly what you are looking at.
Where it fits
- Study a working RAG pipeline to understand how AI retrieval systems are built.
- Explore simplified Rust implementations of tools like Redis or Kafka to learn internals.
- Run a mini operating system or compiler to see how low-level systems function.
- Review a model routing layer to understand AI infrastructure architecture.