Blog
My learnings on engineering, platforms, and AI.
- Was It The Agent? A weekend tool for a question every team is asking
git blame, but it also tells you whether the line was written by Claude Code, Copilot, Cursor, or a human. Built it, learned its limits fast.
- Building a Singapore Food Classifier — Part 3: Case Studies — What the Model Gets Right, Wrong, and Why
A detailed look at real predictions from Hawker AI — the confident wins, the embarrassing failures, and the edge cases that explain why food classification is harder than it looks.
- Building a Singapore Food Classifier — Part 1: Data, Training, and Why 79% is Harder Than It Sounds
How I built a dataset of 4,000 hawker food images from scratch, fine-tuned EfficientNetV2, and learned that bak chor mee and mee pok are basically the same dish.
- Building a Singapore Food Classifier — Part 2: Deploying an ML App on Free Tiers
How I deployed a PyTorch image classifier using Vercel, Modal, and Azure Blob Storage — with API key auth, rate limiting, and GitHub Actions — all on free tiers.
- How to Fine-Tune an AI Model on RunPod (Beginner's Guide)
A practical walkthrough for fine-tuning a small language model on rented GPU hardware—LoRA, HuggingFace, and RunPod—for under $1.
- Three services, one product: when the API shouldn’t do everything
Fast API, patient queue, boring sync—so timeouts and retries don’t land on the person holding the phone.