Writing about code, life at the wannabee farm, and whatever else is on my mind.
Nubrixy started as a web prototype and became a native iOS block puzzle game. The architecture decisions — SwiftUI + SpriteKit, one scoring system, data-driven content — that let it survive feature creep.
I needed a way to snapshot and restore MongoDB databases without mongodump. So I built a terminal UI tool in Node.js. Here's how it works.
Experimenting with Claude as a day-to-day tool on a familiar stack. Where it actually saves time, why proof of concepts are the sweet spot, and what to watch out for.
Seven years on a 2018 MacBook Pro i7. The fans are loud, the battery is gone, and the patience has worn thin. Time to move to a Mac Studio M4 Max.
This site is plain HTML and CSS — no build step, no bundler. So the deployment pipeline is equally simple. Here's how a push to master ends up live on the server.
She's doing well. Really well, actually. Duckie arrives every morning without fail for her breakfast. An update on our little duck with the broken bill.
A wild duck turned up at the property with the top half of her bill missing. We started feeding her a warm porridge mix each morning. This is how it started.
Today I learned: How to use .env files natively with Node.js. This is so useful!
Transactions ensure that a series of operations execute as a single unit, maintaining consistency and enabling rollback in case of errors.
I found myself wanting to mess around with Java again, to be fair I haven't touched Java in a long time, a really long time. Well let's jump into it!
In 2025, technology is no longer just a part of our lives - it shapes them. From how we communicate to how we work, learn, and even make decisions, computer science is the invisible engine driving modern society forward.
When you're stepping into the world of web development, it's easy to feel overwhelmed by the number of tools and frameworks available.