Blog.

Blog.

Notes on digital infrastructure, databases, and building reliable systems.

Missing data is not zero

English

One small message in Transit captures a much larger part of the data work: OC Transpo service alerts are unavailable because no alert feed is connected here.

transit-dataanalytics

What can move forward before the product catalogue is final?

English

A website can present a business before it includes a complete product catalogue. Café Arona’s current site focuses on information and contact. A catalogue can be added later.

web-developmente-commerce

When two similar components should stay separate

English

Two cards can look related and still need different contracts.

software-architectureweb-development

Changing language should not mean starting over

English

A multilingual website has more to translate than its headings. The reader's place, selected filters, and unfinished message also deserve attention.

web-developmentbilingual

Does your website need instant publishing?

English

If updates can take a few minutes to go live, you can separate the editor from the public site, keep published pages independent from the CMS, and give the owner one place to edit content.

web-developmentcmssveltekitdirectus

$50 to $0: an Oracle Always Free VM

English

Transit's managed database and worker cost me about $50 to $60 a month. In my PAYG account, the Oracle A1 VM that replaced them currently costs me $0, and its 200 GB-class disk forced an explicit retention budget.

oracle-cloudself-hostingpostgresqltransit-data

AI-accelerated, human-owned: my actual workflow

English

Claude was the primary implementation tool for my two sites. Codex mostly reviewed the work and sometimes stepped in as a backup implementer. I chose the architecture and caught the kind of CMS mistake a demo can hide.

ai-assisted-developmentsoftware-architecturecmscode-review