Code Agency

#development

14 articles tagged development.

16 min read

The column you can't just rename: schema changes without a maintenance window

A rename is the cheapest thing a database does and one of the most dangerous things a deploy does, because two versions of your application are always live at once. Expand, backfill, contract — the release boundary that makes it safe, the locks that bite anyway, and what changes when Odoo owns the schema.

postgresqldevopsarchitectureodoodevelopment
13 min read

LISTEN/NOTIFY in practice: realtime features without a message broker

Postgres can push an event to your app the moment a row commits. The trigger that catches every writer including the ERP, the listener that survives a reconnect without losing a change, the pooler that silently breaks all of it, and the bulk import that turns a live board into 40,000 notifications.

postgresqlarchitecturenextjsdevelopment
13 min read

WordPress, headless or custom: a decision framework without dogma

Three good answers to "we need a website", each right for a different shape of requirements. The five questions that actually decide it — who edits, what it talks to, whether visitors change state, who owns it in three years, and what the risk surface has to look like — plus the two migrations that go wrong in both directions.

wordpressheadlessarchitecturebusinessdevelopment
13 min read

The invalidation tax: where TanStack Query ends and TanStack DB begins

In an internal tool, the same order is on screen in five places at once, and every mutation has to remember all five. What a client-side store fixes that a cache can't — collections, live queries, optimistic writes that roll back on their own, and the working set that has to fit in a browser.

reacttanstackarchitectureerpdevelopment
7 min read

A marketing site with no CMS: MDX, git and a build pipeline

No database, no admin panel, no plugin updates. Content is MDX in the repo, frontmatter is a Zod schema that fails the build, review is a pull request — and publishing is a merge. The architecture behind this website, and the case where you shouldn't copy it.

nextjsarchitecturedevelopmentjamstack
8 min read

Leaving Radix for Base UI: a component migration story

When your primitive library changes direction, you migrate deliberately. Mapping Radix patterns onto Base UI, the accessibility differences that surprised us, and the codemod that did the boring three quarters.

reactfrontenddevelopment
7 min read

TanStack Start for internal tools: when you don't need Next.js

Every custom build ships two frontends — the one your customers see and the one only your client's own staff opens. The first earns Next.js. The second is usually paying a tax for machinery it never uses.

reacttanstacknextjsarchitecturedevelopment
6 min read

Your AI assistant has amnesia: adding a memory layer with mem0

Every session starts from zero: the same stack briefing, the same corrections, the same tokens burned re-explaining decisions you made months ago. mem0 gives AI development a persistent memory — what it actually does, the numbers behind it, and why we self-host it on our own cluster.

aidevelopmentdevops
7 min read

Postgres is enough: queues, search and pub/sub without five more containers

Before a two-developer project grows a Redis, a RabbitMQ and an Elasticsearch, look at what the database you already run can do. SKIP LOCKED queues, tsvector search, LISTEN/NOTIFY — and the measured signals that tell you when to graduate.

postgresqlarchitecturedevelopmentperformance