Latest Posts
RSSArticles and insights about shipping software. Mostly things I figured out the hard way.

When postMessage is too slow: Shared Memory patterns for Web Workers
An overview of Web Worker communication: Comlink for control, transferables for big handoffs, and SharedArrayBuffer patterns for high-frequency updates.
2026

Optimizing an Astro Site for 100 PageSpeed
A practical guide to pushing an Astro site to a 100 PageSpeed score: CSS budgets, fonts, images, and the Speed Index fixes that actually matter.
2023

Meet WebTransport: The Future of WebSockets
How WebTransport overcomes WebSockets and WebRTC limits using QUIC, datagrams, and bidirectional streams—for games and real-time apps.

Visual Regression Testing with Cypress and Storybook
Use Cypress and Storybook to catch visual regressions in React apps and keep every UI update consistent across browsers and screen sizes.
2016

Streaming a video with Media Source Extensions
Learn how Media Source Extensions let you inject partial WebM video into an HTML5 player—useful for streaming and progressive playback.