Why Ethereum Execution Clients Are Being Rewritten in Rust

If you've spent any time around L2 rollups — including the op-stack setup covered in an earlier post here — you've run into "execution clients": the piece of software responsible for actually running transactions and maintaining state. Go has dominated this space for years via Geth. More recently, a wave of new clients (Reth being the most visible) have been written in Rust instead. The reasons why are a good case study in what Rust is actually for.

2025-05-10 · 4 min · 

Create your own l2 rollup testnet with op-stack and celestia DA

2025-04-29 · 13 min · 

LLM Quantization, Explained in Plain English

If you've tried running a large language model on your own hardware, you've probably run into the same wall everyone does: the model is huge, your GPU memory is not, and downloading a "7B" or "70B" model suddenly feels like a math problem. Quantization is the main trick the community uses to close that gap.

2025-03-12 · 3 min · 

Retries, Backoff, and Jitter: Why Naive Retry Logic Makes Outages Worse

"Just retry the request" is one of the most reasonable-sounding pieces of advice in distributed systems, and one of the easiest to get badly wrong. Done carelessly, retries don't make your system more resilient — they turn a small, recoverable blip into a full outage.

2025-01-20 · 4 min · 

PostgreSQL VACUUM and Autovacuum, Explained

If you've run PostgreSQL in production long enough, you've eventually looked at pg_stat_user_tables, seen a dead_tup count in the millions, and wondered what's going on. The answer is almost always: not enough vacuuming.

2024-11-05 · 4 min ·