-
Parsing a real-world CSV export: five assumptions that break
The header wasn’t on line 1, a BOM was glued to the first column name, and…
-
Zustand persist in Next.js: the hydration mismatch, and what version is actually for
“use client” does not mean “not server-rendered”, which is why a persisted Zustand store causes a…
-
Handling webglcontextlost with a permanent poster fallback
A WebGL scene can fail three different ways, and one of them fires no event at…
-
Inferring a CSV’s UTC offset by matching fill prices against 5-minute candles
A trade CSV had timestamps but no timezone. Instead of guessing, I used price as ground…