Frontend deep-dives
Long essays on craft: React, CSS, the feel of interactions, DX. I write the one I'd want to read.
Notes, projects, and physical artifacts from a frontend engineer who keeps a workshop in the corner of the room.
Long essays on craft: React, CSS, the feel of interactions, DX. I write the one I'd want to read.
Libraries and CLIs I actually use. Ship something weekly. Prefer five 200-line packages over one framework.
Tiny playable things I use to learn: physics toys, css puzzles, weird layouts. Most live inside a blog post.
Functional prints, engraved things, a cabinet slowly filling with objects. Same iteration loop as code, slower.
Mostly oil on paper. A place where the feedback loop is weeks, not milliseconds, which is exactly the point.
What I saw, what I'm reading, small tools I found worth saving. The non-work half of the site.
Try it. The sweet spot for most buttons: ~160 ms, 2 px lift, subtle scale on press. Longer = sluggish. Shorter = jittery.
Out, decelerates. My default for almost everything: entries, dismissals, button feedback. Feels "polite."
Empty image slots looked sad. Real photos weren't ready. So I built a deterministic Canvas2D engine that fills every missing tile with art derived from the slot's slug, plus a playground.
Every few years a junior dev rediscovers margin collapse and writes a thread about it. This is mine, except I'm trying to make peace with the rule, not abolish it.
There are 200 planning poker tools. I built one anyway — because I liked some card illustrations, wanted to play with WebSockets, and needed an excuse to ship something fun with Claude Code.
Why ⌘K deserves a seat at the table next to the menu bar and the URL bar, and how to build one that feels instant.
How to organize Claude Code skills, commands, and plugins across projects. Global vs local, vendor skills, per-project profiles, and a bootstrap script for new machines.
I'm a frontend engineer who believes the difference between good and great software is measured in milliseconds and millimeters. I care a lot about how a button feels, how a system is built, and how to teach what I learn.
Outside the screen I keep a small workshop, a 3D printer, a laser cutter, oil paints, and a lot of plywood. Different materials, same loop.