Blog
Notes from the build
Short, practical posts from the systems I run: automation, ERP and POS, fleet IoT, infrastructure, and the tech decisions behind them.
Audit the process before you automate it
Hours × error risk decides what gets automated first. The impressive task is almost never the right one.
- automation
- process
- consulting
Month-end fleet reports from a portal in one click
How a Flask app replaced days of spreadsheet work by pulling the operations portal once per period and recalculating every report from cached data.
- accounting
- fleet
- python
- automation
A POS that refuses to sell below cost
For a flower shop, every bouquet is assembled from loose stems. The usual retail POS cannot tell whether the price covers the cost, so I built one that can.
- erp
- pos
- retail
- node
Turning email into Odoo tasks without drowning in noise
The first version of the email-to-task bot created a task for every message. The useful version knows which emails are work and which are reports, newsletters and reply-alls.
- odoo
- automation
- microsoft-365
- python
A whole house from hand sketches, in Three.js
Floors as data, walls generated on a half-foot grid, a facade placed by rule. How a four-level house model went from pencil sketches to a client pack in two days.
- 3d
- three-js
- architecture
- visualisation
Why this site went black at the last section
A cloud texture loaded from a CDN, no error boundary, and React unmounting the whole app. Then a second black page with a different cause, a cached rate-limit error. A post-mortem on two bugs in this portfolio.
- react
- three-js
- debugging
- web