Archives
All the articles I've archived.
Scroll storytelling: smooth scroll, pin, parallax, progress
A zero-dependency demo of four scroll storytelling techniques: smooth scrolling, pinned horizontal travel, parallax layers, and a scroll-driven counter, with a GSAP and Lenis counterpart.
Running 24,000 particles with raw WebGL
Generate the initial particle data once, then calculate each frame's positions in a vertex shader. The complete interactive demo runs inside the post.
What changed in the MCP draft: sessions and handshake are gone
Notes from the official MCP spec draft's changelog, compared against the 2025-11-25 version, focused on sessions, the handshake, MRTR, and migration impact.
Latest digest
Short, one-thing notes. A new tool, a long read, or a production symptom — the entry hub.
How Handler Context reaches database queries
Updated:When Request.Context is canceled, and how database/sql QueryContext carries that cancel into a query from a business Handler.
Where timeouts bite after HTTP enters a Go process
Updated:Maps net/http.Server's ReadHeaderTimeout, ReadTimeout, WriteTimeout, and IdleTimeout to pin down exactly where a request stalls inside the process.
Backend notes
Updated:Entry point for server-side mechanism notes. The Request Crossing series starts with HTTP timeouts in Go.
Breaking down Orloj: Agent runtime, control plane, and embedded console
Updated:A close read of Orloj's single-agent loop, multi-agent graph routing, tools and governance, and how the Go control plane, Postgres leases, and React console wire into the same resources. With core code and diagrams.
What this blog is for
A short intro, and the kinds of notes I keep publishing here.
How I break down an Agent project
When I open an Agent repo or case study, this is the order I use to read and take notes.
Full-stack learning: get one path working end to end
When learning full-stack work, stacking buzzwords matters less than walking one request from browser to data and back.