Home
Latest
All postsSelected
AI coding agents are powerful. But long-running AI coding projects break in a very specific way: the session is interrupted the context becomes too long the weekly quota runs out tomorrow’s agent forgets yesterday’s decisions the agent changes unrelated files the agent marks work done too early The problem is not that AI cannot write code. The problem is that AI coding projects often do not have durable project state.
AI can generate code. Harnesses can validate behavior. But who builds understanding? This is Part 1 of the AI-Native Software Engineering series. The series asks a larger question: When AI lowers the cost of implementation, what remains scarce in software engineering? This article starts with the first scarce resource: Understanding. Over the past few months, I’ve been experimenting heavily with AI-assisted software development. Not autocomplete. Not AI as a coding copilot.
You can automate implementation. You can automate evaluation. But judgment remains stubbornly human. This is Part 4 of the AI-Native Software Engineering series. It continues from AI-Native Software Engineering, Part 3: Software as Search. The first article asked how understanding forms. The second asked how correctness forms. The third argued that software is starting to look like search. This article pushes back on a dangerous misunderstanding: If we have agents, harnesses, and constraints, software can produce itself. That is not true.
A user-first system design breakdown of how bank apps, SGQR, PayNow, NETS, contactless card payments, and FAST work together in Singapore's payment ecosystem.
I recently rebuilt my personal website around a simple idea: Keep Obsidian as the private source of truth, and selectively publish public notes into a clean personal website. This is less a Hugo tutorial and more a note about designing a publishing boundary between a private knowledge base and a public website. This article documents the architecture, tradeoffs, and workflow I ended up with. The repository names, URLs, and site pages in this article come from my own setup. If you follow the same approach, replace them with your GitHub username, repository name, domain, and navigation structure.
Series
All series4 posts · starts with AI-Native Software Engineering, Part 1: Mental Models in Agentic Coding
5 posts · starts with Remote Agent Workflow, Part 1: Remote Mac Terminal for Codex
3 posts · starts with Why Singpass Becomes National Trust Infrastructure