Vector search: HNSW in twenty minutes

How approximate nearest-neighbour search gets sub-linear without a space-partitioning tree.

October 6, 2026 · 2 min · mc

Reading list — October 2026

A few things that crossed my desk this month.

October 1, 2026 · 1 min · mc

sendfile, splice and the zero-copy mindset

Stop bouncing bytes through userspace just to put a file on a socket.

September 8, 2026 · 2 min · mc

Reading list — September 2026

A few things that crossed my desk this month.

September 1, 2026 · 1 min · mc

Bloom filters, and when a probabilistic set is the right call

Trade a little certainty for a lot of memory — the math is friendlier than it looks.

August 4, 2026 · 2 min · mc

Reading list — August 2026

A few things that crossed my desk this month.

August 1, 2026 · 1 min · mc

Quantization notes: int8, fp8 and what you actually lose

Where the bits go, why outliers ruin everything, and the per-channel trick that saves them.

July 7, 2026 · 2 min · mc

Reading list — July 2026

A few things that crossed my desk this month.

July 1, 2026 · 1 min · mc

Data-parallel training: gradient bucketing and overlap

Why DDP feels like magic until you look at the allreduce schedule.

May 19, 2026 · 1 min · mc

Reading notes: QUIC, 0-RTT and why HTTP/3 is UDP

Moving HTTP onto UDP was not insane — head-of-line blocking is the reason.

April 29, 2026 · 1 min · mc