Show HN: Learn by rebuilding Redis, Git, a database from scratch

acley1 pts0 comments

Ship That Code — Build Real Systems, Not Tutorials<br>Skip to content<br>Learn by building and shippingreal systems.<br>Pick a system. Build it from scratch. Every lesson is choose → write → run, until it clicks.<br>Get started — it’s freeBrowse all courses<br>80+ build-from-scratch courses · 9 languages · no credit card

redis.pybuild redis · lesson 04<br># Handle Redis SET<br>def handle_set(args):<br>store[args[0]] = args[1]<br>return "+OK\r\n"

# Handle Redis GET<br>def handle_get(args):<br>val = store.get(args[0])<br>if val is None:<br>return "$-1\r\n"<br>return f"${len(val)}\r\n{val}\r\n"●Test passed42ms

Storage<br>Build Redis<br>Python · Go · Rust

Storage<br>Build a Database<br>Python · C · Rust

Tooling<br>Build Git<br>Python · Go

Compilers<br>Build a Programming Lang<br>Python · Rust

Systems<br>Build a Container Runtime<br>Go · C

Systems<br>Build a Shell<br>C · Rust

Tooling<br>Build a Text Editor<br>C · Rust

Systems<br>Build an OS Kernel<br>C · Rust

Graphics<br>Build a 3D Renderer<br>Rust · C++

Graphics<br>Build a Ray Tracer<br>C++ · Rust

ML<br>Build a Neural Network<br>Python · C++

Graphics<br>Build a Game Engine<br>C++ · Rust

Networking<br>Build BitTorrent<br>Go · Python

Networking<br>Build a Load Balancer<br>Go · Rust

Distributed<br>Build a Raft KV Store<br>Go · Rust

Distributed<br>Build a Blockchain<br>Python · Go

Explore all 80+ courses

Follow a career path<br>Sequenced courses that take you from zero to job-ready.

All paths

Backend Engineer<br>intermediate·~80h

The infrastructure under every web service — Go, SQL, caches, queues, and the protocols that connect them.<br>Go FundamentalsSQL FundamentalsBuild Redis+5 more

Frontend Engineer<br>intermediate·~65h

Master the browser end of the wire — JavaScript, TypeScript, then build the framework you depend on every day.<br>JavaScript FundamentalsTypeScript FundamentalsJavaScript Advanced+4 more

Full-Stack Developer<br>intermediate·~90h

Both ends of the wire: TypeScript on the client, plus a backend language and the protocols that connect them.<br>JavaScript FundamentalsTypeScript FundamentalsSQL Fundamentals+4 more

DevOps / SRE<br>intermediate·~70h

Run the systems other engineers build — Bash and Go for tooling; Docker, CI, and observability for the platform.<br>Bash FundamentalsGo FundamentalsBuild Docker+4 more

Data Scientist<br>beginner·~60h

Python, R, and SQL — the canonical trio of data analysis. Plus the data structures behind efficient queries.<br>Python FundamentalsPython in PracticeR Fundamentals+4 more

See all 14 career paths

Learn programming languages<br>Each card opens a structured Fundamentals → Intermediate → Advanced track. Tap the > chevron to reveal all 37 languages.

Python<br>JavaScript<br>TypeScript<br>Go<br>Rust<br>C++<br>+31

“You can’t cheat — you either solve the problem or you don’t. It’s the first platform where I actually understand what I’m writing.”

Your first lesson takes 2 minutes<br>Create free account<br>Free forever. No credit card. Takes 30 seconds.

build rust python redis systems args

Related Articles