How I built a live counter that tracks my professional journey down to the second, and the timezone edge cases that nearly broke it.
A running clock on my homepage counts how long I've been building software — down to the second. It sounds trivial, but getting it right meant confronting how messy time really is on the web.
The core challenge was calendar math. Months have different lengths, and a naive 'days since' calculation drifts over the years. I ended up counting whole calendar months forward from my start date, then measuring the remainder in days, hours, minutes, and seconds.
The second trap was timezones. Rendering server-side and client-side produced different values, causing hydration warnings. Anchoring everything to a fixed Cambodia offset and only starting the interval after mount solved it cleanly.
The result is a small but honest piece of the portfolio: a live signal that the work is ongoing, not a static line on a résumé.
