Blog

Notes from production
PHP, Symfony, AI and the ops around it.

Using a local LLM to find better second-hand deals

Second-hand listings are often written poorly, so a keyword search misses the interesting listings or buries you in results. Search wide on purpose and then let a local LLM score every candidate.

An overengineered 'created' event that improved my entire design

I worried about a 'created' event firing too early in my async Billit import and dispatched it from a sub-task to prevent that. When I wanted to write about it, I found out the worry was unfounded and I even realised how I should've approached it from the start.

Guessing a bill's category using AI

I used AI to guess an incoming invoice's category, because Billit doesn't send that field outside of its own platform