Blog
Popular this month

28 September 2026
The Hour That Went Missing Between Two Postgres Clients
A batch of scheduled posts looked like it published an hour early — until it became clear the database was right, and only one of the two tools reading it was wrong.
databasesdebugging

31 August 2026
The Default Value That Passed tsc and Failed the Build
A page component with `= {}` on its props typechecked cleanly and broke `next build` anyway — a class of error the type checker alone will never catch.
nextjsdebugging

28 July 2026
The Dollar Sign That Broke My Bcrypt Hash
A bcrypt hash stored in .env stopped matching after a routine restart. The cause was not the hash — it was Next.js expanding $ as a shell-style variable reference.
debuggingsecurity