
Pannonico 0.6: how a personal side project is becoming a professional tool
A few weeks ago I wrote about Pannonico, the static site generator I've been building in Go. At that...
Tag archive

A few weeks ago I wrote about Pannonico, the static site generator I've been building in Go. At that...

The Hook I'd read about blockchains plenty. Reading an explorer, querying past data — that...
A practical guide to duplicate execution, request fingerprints, concurrency, and safe retries. A...
Coding agents fail on boilerplates in one specific way: they reimplement what exists. The fix is not a smarter prompt — it is an enforced map. How GoV
Three pipelines, identical for every service, derived from the file that declares the service - and exactly three decisions left to a human: environment, secrets, tag. Plus the one defect in this area that stays green while being wrong.

Go 1.27 lets methods declare their own type parameters. I converted a 14-function helper package, hit the interface rule that still says no, and rever

Ask which backend is fastest and somebody shows you a bar chart. For twelve years that chart came...
Why introducing cgo into a Go service is a deployment architecture decision, not a dependency choice—and what it costs in production.

The Hook "Go is good at concurrency" is a sentence I'd read a dozen times before it meant...
A machine-written snapshot of one service counts 67 metric records. Six of them came from the service. The rest arrived with the runtime - and the rules for adding a new one are stricter than the rules for writing the code that emits it.
Add a service and you get code, observability and deploy — or the platform drifts from reality. What it takes to keep 'declared' and 'actual' the same thing by construction, and what that costs.
Use the input list your code actually built, not the one the filenames imply. A merged PDF comes out...