Blog
Writing.
A working notebook. Tools, tech, Malaysian payment rails, production incidents, the occasional Solidity diary.
2026-06-03 · 8 min
Why Your Error Budget Is Lying to You (And How Observability Actually Fixes It)
Error budgets sound clean in theory but fail silently when you can't see where the unreliability actually is. Here's how to build observability that makes them real.
sreobservabilityerror budgetsreliability2026-06-03 · 7 min
When Your Team Stops Talking to the Database Directly — Why That Matters
Direct database access feels fast until someone deletes a year of records by accident. Here's what happens when you add an API layer, what it costs, and the exact warning signs your business has outgrown the shortcut.
databaseapioperationsscaling2026-04-18 · 4 min
Claude Code, but for backend people
Not a demo reel. How I actually use Claude Code for queue workers, schema migrations, and payment code where wrong answers cost RM.
aiworkflowclaude-code2026-04-18 · 5 min
Next.js 16 broke my blog. The fix was three lines, the lesson was bigger.
Vercel blocked my deploy over an RCE advisory, the upgrade introduced a new default that silently stripped JSX props, and it took a few hours to find the two config flags.
nextmdxmigration2026-04-18 · 5 min
Opus 4.7 is slower on my codebase. Here's where the benchmarks lie.
Anthropic's SWE-bench Pro jump is real. But adaptive thinking adds latency that benchmarks absorb and surgical codebases do not.
aiclaudebenchmarks2026-04-18 · 5 min
Write a blog in 2026 without sounding like ChatGPT
Dev blogs are drowning in generated prose. Here are five rules to write with actual voice before readers learn to skip yours on sight.
writingvoiceai2026-04-18 · 8 min
FPX, DuitNow, and why OAuth alone won't save your Malaysian fintech
OAuth gets you past the login screen. Idempotency, mandate state machines, and settlement-file reconciliation are what keep production from burning.
fintechmalaysiapayments2026-04-18 · 7 min
Malaysia's 900 AI startups need backend engineers, not prompt engineers
The capital has arrived. The data centers are built. The thing Malaysia is still short of is the decade-accumulated skill of building systems that stay correct.
malaysiahiringai2026-04-17 · 4 min
Postgres + Drizzle, after a year
Not a tutorial. Lessons from a year of running Drizzle in production across JomJual, Lunara, and a few side builds.
postgresdrizzledxtypescript2026-04-16 · 5 min
One VPS, three side projects, zero cloud bill
Docker Compose, Nginx, a 2GB Hetzner box, and the indie-infra setup I use when I do not want a cloud invoice on my personal card.
devopsself-hostingdockerindie2026-04-15 · 5 min
Reading Malaysian payment rails
FPX, DuitNow, TNG, Curlec, iPay88. A short guide to the local payment landscape without the Silicon Valley lens.
paymentsmalaysiafpxduitnow2026-04-14 · 4 min
Solidity, learning diary
Notes from a web2 engineer writing real smart contracts. Foundry, gas math, and the mental shift that actually matters.
solidityblockchainlearning