Writing
Notes and essays on profiling and optimising interfaces that never stop updating. Steady-state performance, the part the load-time tools miss.
-
How to Profile a Real-Time UI
A field playbook for profiling real-time UIs: read a Performance trace through three competing rates, input, compute and render, to find which mismatch is causing the jank, with the Chrome DevTools surface and the number for each, and what a healthy trace looks like.
- performance
- real-time
- profiling
- chrome-devtools
- react
-
I Cancelled the Stale Request. The Render Still Lied.
useEffect plus AbortController is the correct async pattern, and under load it still renders a state the data never made. Why cancellation is not coherence, and the one invariant that fixes it.
- react
- async
- concurrency
- state-management
- real-time
-
The Animation Wasn't Where the Time Went
A chart redraws at 5 Hz while its y-axis rescales. Animating the rescale as a composited transform, instead of re-rendering every frame, cut main-thread work by roughly two-thirds. The costs I braced for never fired. The redraw itself dominated.
- performance
- react
- web-animations-api
- svg
- rendering