// writing

Thoughts on code,
craft & exploration.

A mix of technical deep-dives, career reflections, and dispatches from the road.

topic:
React Compiler v1.0: Automatic Memoization Without the Headache thumbnail
developmentMay 12, 2026· 4 min
React Compiler v1.0: Automatic Memoization Without the Headache
React Compiler v1.0 landed in production-ready form and it automatically handles the memoization patterns you used to write by hand — here's what changed, how to set it up, and what it means for your day-to-day React code.
read more →
Svelte 5 Runes: Reactive State That Actually Makes Sense thumbnail
developmentMay 9, 2026· 4 min
Svelte 5 Runes: Reactive State That Actually Makes Sense
An introduction to Svelte 5 runes — the explicit reactive primitives ($state, $derived, $effect, $props) that replace Svelte 4's magic $: syntax and make reactivity predictable, composable, and no longer limited to .svelte files.
read more →
CSS Anchor Positioning: Stop Using JavaScript for Tooltips thumbnail
developmentMay 9, 2026· 4 min
CSS Anchor Positioning: Stop Using JavaScript for Tooltips
A deep dive into the CSS Anchor Positioning API — how anchor-name, position-anchor, position-area, and position-try-fallbacks let you build tooltips and floating elements entirely in CSS, no JavaScript or Floating UI required.
read more →
CSS Customizable Select: Finally Style It Without the Hacks thumbnail
developmentMay 8, 2026· 4 min
CSS Customizable Select: Finally Style It Without the Hacks
A guide to the CSS customizable select — how appearance: base-select unlocks full styling of native dropdowns including custom icons, rich option content, and picker pseudo-elements, without sacrificing accessibility or dropping in a JS library.
read more →
Biome: The Fast All-in-One ESLint and Prettier Replacement thumbnail
developmentMay 6, 2026· 3 min
Biome: The Fast All-in-One ESLint and Prettier Replacement
Biome is a Rust-based toolchain that replaces ESLint and Prettier with a single fast binary. Here's what it does well, where it falls short, and how to migrate.
read more →
JavaScript Temporal API: Dates Are Finally Fixed thumbnail
developmentMay 3, 2026· 4 min
JavaScript Temporal API: Dates Are Finally Fixed
A practical introduction to the JavaScript Temporal API — the ES2026 replacement for Date that gets types right, handles timezones properly, and makes date arithmetic readable without moment.js or date-fns.
read more →
CSS Cascade Layers: Finally Taking Control of Specificity thumbnail
developmentApr 26, 2026· 3 min
CSS Cascade Layers: Finally Taking Control of Specificity
The @layer rule gives you explicit control over which CSS wins when rules conflict. Here's how cascade layers work and how they change the way you structure stylesheets.
read more →
Diamond Lake, Oregon thumbnail
travelApr 25, 2026· 2 min
Diamond Lake, Oregon
A 3,000-acre alpine lake at 5,138 feet in the Oregon Cascades, flanked by Mount Thielsen and Mount Bailey, stocked with 300,000 rainbow trout annually.
read more →
Edge Functions: Running Code Where Your Users Are thumbnail
developmentApr 19, 2026· 3 min
Edge Functions: Running Code Where Your Users Are
Edge functions run your code in data centers close to users, eliminating the latency of a centralized origin server. Here's what they're good for and how to build with them.
read more →
Progressive Web Apps in 2026: Offline-First Patterns That Actually Work thumbnail
developmentApr 18, 2026· 3 min
Progressive Web Apps in 2026: Offline-First Patterns That Actually Work
PWAs have matured significantly. Between Workbox's caching strategies, the Background Sync API, and the Web App Manifest improvements, building offline-capable apps is more practical than ever.
read more →