
Six thousand entries later, what I've learned about journalling
I recently logged my 6,000th Daylio entry. I have been using the app since August 2018, when I was twelve: over eight years of entries, averaging just over...

Montenegro - untamed peaks and coastal sun on a Balkan budget
One morning, we were eating pastries on a balcony looking out on a Mediterranean bay. Two days later, we were standing on a windswept mountain peak at 2300m,...

A reading list for 2026
The last few years have been bad for my reading. I’ve read a couple of books, but it...

A child-free internet, at what cost?
When I wrote about the Online Safety Act last summer, I warned that forcing people to hand over...

Why is audio on Linux such a headache?
Any Linux user will tell you that audio is a nightmare. While Windows and macOS users have spent...
Escaping the Google Tax with Lemon Squeezy
Building a personal finance app is inherently ironic. You are spending thousands of hours constructing a tool designed to help...

How we ported CashCat from Next.js to Native Mobile
Most of my recent work on CashCat has been working on the web version, the Next.js app deployed at cashcat.app....
The death of Open Banking for hobbyists
Open Banking is a wonderful concept. A more transparent society, boosting competition, allowing immense analytical power of financial data, and...

What if we could rate movies in 2D?
I’ve written extensively about 5-star rating systems and their flaws, so where are my alternative solutions? Right here: a 2D...

Damaskus: 48 hours and 3 friends
Play the game now! (damaskus.indigo.spot)

Building a gamified election simulator
TLDR: I built a tiny (very inaccurate, but fun) political simulation game. You can play it at polplay.indigo.spot.

What on earth is Kresimiria?
TLDR: I got way too into a Crusader Kings 3 game playing as Croatia, started writing in-character peace treaties with...

I use Arch, btw (yes, on the Framework)
I’ve been happily running Fedora 42 on my Framework laptop for a couple of weeks, but I recently got that...
Designing your personal space on the internet
My website used to be a lot flashier. There was a period where I had typewriter effects on almost every...
Participating in Netcraft's Cryptocurrency CTF
Yesterday, our team participated in Netcraft’s cryptocurrency capture-the-flag workshop, where we competed to earn as much “Netcoin” (a fictional and...
2.5 stars should be the middle, but feels like a fail
What does a three-star rating really mean? Is it a positive recommendation? Is it a ‘meh’? Is it a warning?...

I bought a Framework laptop and put Linux on it - should you too?
For about five years now, I’ve been using my Macbook Air 2020 with the M1 chip as my daily driver....
Burnout and impostor syndrome (take life a little slower)
Burnout sucks. We’ve all been there, developers, creatives, students, everybody. You’ve been working on a project for months, you’ve almost...

Why I'm building favourites.me
This is Part 1 of a 3-part post: Part 2 - Part 3.

The simple joy of tap-on tap-off
I’ve just come back from a week in Brussels, a city that gets so much right, but especially public transport....
The shifting nature of a political party
It is looking increasingly likely that Zack Polanski will secure the leadership of the Green Party of England and Wales...
When It's Cold I'd Like To Die
Warning: sensitive themes
Children know how to use VPNs
You may have heard the outcry over the recent Online Safety Act, in particular in relation to adult content online;...

Please, stop putting AI everywhere
I don’t need AI to summarise a news article I’m already reading. I don’t need an AI to help me...
Why Monopoly was designed to be bad
I was recently at home with my parents and siblings for a week, and after a family dinner, we came...
Language as a lossy compression algorithm
In digital media, lossy compression is the trade-off we make for convenience - we accept the loss of some data...
What using my phone in black and white for a week taught me
You probably use your phone too much. I know I do. If I’m bored, I check Twitter (or X, if...
Voting has bad user experience
You’ve just downloaded a brand-new app. It asks for your preferences, you tap through setup, and you’re in. Nothing is...

Why we still use QWERTY
I was coding earlier today (surprise surprise), and felt myself question for a second, why my fingers were moving so...
22:45
There was not a person around, not here in the forest, not now at ten o’clock on a crisp January...
Solstice and Sulphur
Prologue
Hot Hot Coffee
He’d made my coffee too hot. I don’t like my coffee hot. I set the cup down, my tongue already...

Fantasteroids - Deep Dive
Here’s a link to the game!