Engineering notes.
Things we've shipped, things we'd do differently, and the trade-offs nobody mentions in the demo.
Frontend7 minAstro 5 in production: what we learned shipping a custom book platform
Why we chose Astro over Next.js, where it surprised us, and the call we'd make differently.
Read post
Mobile8 minOn-device ML in Flutter: TensorFlow Lite vs ONNX Runtime, with numbers
Same model, both runtimes, real benchmarks. Load time, inference latency, binary impact, and the platform-channel overhead nobody mentions.
Read post
Backend8 minLaravel Reverb vs Pusher vs Socket.io: choosing a real-time backend in 2026
We've shipped all three in production. Here's what each gets right, what each gets wrong, and the moment you outgrow one.
Read post
Mobile9 minThe Flutter performance audit checklist we run before every release
Seven specific checks that catch most performance regressions before users do. Profiler signals, real numbers, no listicles.
Read post
AI/ML10 minBuilding an Afrikaans TTS model: 2,731 samples and what we'd do differently
We trained a custom Afrikaans voice for an AAC app. Here's the dataset prep, model choices, on-device deployment, and the surprises.
Read post
Payments7 minPayFast vs Stripe for South African SaaS subscriptions
We've integrated both in production. Here's where each wins, where each fails, and the decision matrix we now use.
Read post
Backend8 minRow-level multi-tenancy in Laravel: the four leak modes
Past the basics. The four places where data quietly leaks across tenants in a single-database Laravel SaaS — and how to plug each one.
Read post