Open source

Two kinds, kept apart on purpose. The layer underneath, rebuilt from scratch to understand it. And the patches I land in codebases I don't own, where the job is to be right inside someone else's design.

Projects

Side projects, and I'll call them that. Each one is the smaller, wronger version of something I depend on, built from scratch until I could see how the real thing works. Source and full write-ups are onGitHub.

bytekvC

A small Redis in C: event loop, append-only log, compaction. Built to find out where the line between fast and durable actually gets drawn.

building-tcp-servers-in-cC

One echo server written seven ways, from blocking up through select, poll, epoll, and kqueue. The point was to feel exactly what each I/O model buys you.

building-tcp-servers-in-rustRust

The same exercise in Rust, from blocking up through mio and tokio, with one test that runs across every backend. Async stops being magic once you've hand-written the thing underneath it.

RowOrient_DBC

An in-memory, row-oriented database in C. Built to answer the one question I kept skipping: where do the bytes actually go.

SolarixRust

A Solana indexer in Rust. Building on the chain is not the same as understanding it. This is where that gap starts closing.

x402_CLIRust

A CLI for the x402 payments protocol on Solana. Small, but it moves a real dollar over a spec, which is the fastest way I know to actually learn one.

Contributions

Merged and in-flight pull requests to projects I don't maintain, folded by repo, most-merged first.

15 merged pull requests

rust-lang/rust9 merged4 open1 closed
anza-xyz/agave2 merged1 open
beetbox/beets1 merged
Syndica/sig1 merged
chandshy/mailpouch1 merged
alexpasmantier/television1 merged
zellij-org/zellij2 open
mierak/rmpc1 open