Welcome to NaNoWriMo, where I - and thousands of other plucky souls - try to write a 50,000 word novel in a month. You are reading "Tales of the Algorithm". A compendium of near-future sci-fi stories. Each chapter is a stand-alone adventure set a few days from now. Everything you read is possible - there's no magic, just sufficiently advanced technology. Think of them as technological campfire…
Continue reading →
Welcome to NaNoWriMo, where I - and thousands of other plucky souls - try to write a 50,000 word novel in a month. You are reading "Tales of the Algorithm". A compendium of near-future sci-fi stories. Each chapter is a stand-alone adventure set a few days from now. Everything you read is possible - there's no magic, just sufficiently advanced technology. Think of them as technological campfire…
Continue reading →
Welcome to NaNoWriMo, where I - and thousands of other plucky souls - try to write a 50,000 word novel in a month. You are reading "Tales of the Algorithm". A compendium of near-future sci-fi stories. Each chapter is a stand-alone adventure set a few days from now. Everything you read is possible - there's no magic, just sufficiently advanced technology. Think of them as technological campfire…
Continue reading →
Every year since 2009, I've taken part in NaBloPoMo - National Blog Posting Month. The aim is to publish a new blog post every day in November. In the last few years, I've blogged pretty much constantly - daily for 2020, 2021, and 2023. A total of around 2,800 posts. But now it is time for a new challenge - NaNoWriMo. Where I - and thousands of other plucky souls - try to write a 50,000 word…
Continue reading →
I remember seeing the original "A new decentralized microblogging platform" on HackerNews back in October 2016. A few weeks later, I joined - becoming the 7,112th user. As the years went on, my use of it waxed and waned. I started cross-posting to both Mastodon and Twitter. Gradually, I started spending more time on the Fediverse. Once Elon shat the bed on Twitter, I moved over completely. And, …
Continue reading →
I've responsibly disclosed a small security issue with Mastodon (GHSA-8982-p7pm-7mqw). It allows a sufficiently determined attacker to use any Mastodon instance to redirect unwary users to a malicious site. What do you think happens if you visit: https://mastodon.social/@PasswordReset/111285045683598517/admin? If you aren't logged in to that instance, it will redirect you to a 3rd party site.…
Continue reading →
As the Middle-East convulses in yet another bloody war, and with no end in sight to the barbarity, we're all looking for a way to understand the horrors unfolding. So I went searching in the past. What set the seeds of today's conflict and was there any way to prevent it? This is a dispassionate and, it has to be said, dry look at how the British intelligence agencies operated in the region…
Continue reading →
All USB-C cables are equal. But some, as the saying goes, are more equal than others. This little gadget from Plugable is a fantastic bit of kit. Plug your USB-C power supply into one end of the gadget, plug the gadget in to your laptop, phone, or any other USB-C device. Watch the screen to see how much power is flowing. Action Shot …
Continue reading →
Imagine a world with inter-city rockets, where tourists still use film cameras. Where self-driving trucks sport a wide array of sensor apparatus and record all their data onto miles of magnetic tape. Where the latest Androids are life-like and can perfectly clone a dead man's speech, yet are powered by punch-cards. People make video calls from public booths which eagerly accept coins as payment. …
Continue reading →
Yesterday I wrote about a lazy way to implement a manual dark mode chooser. Today I'll show you a slightly more sensible way to do it. It just uses CSS, no need for JavaScript. Here's a scrap of HTML which present a dropdown for a user to choose their colour scheme: <select id="colour-mode"> <option value="">Theme Selector</option> <option value="dark">Dark Mode</option> <option…
Continue reading →
I'm not saying this is a good way to make a dark mode website. I'm not even saying it's a sensible way to do dark mode. But I'm pretty sure this is the laziest way of getting dark mode on your site. And it is all done with less than a handful of CSS rules. It relies on the new-ish :has() CSS pseudo class and the positively ancient filter() CSS function. Here's the code in all its glory: …
Continue reading →
As I mentioned last week, MoneyDashboard is shutting down. They are good enough to provide a JSON export of all your previous transactions. It is full of entries like this: { "Account": "My Mastercard", "Date": "2020-02-24T00:00:00Z", "CurrentDescription": null, "OriginalDescription": "SUMUP *Pizza palace, London, W1", "Amount": -12.34, "L1Tag": "Eating Out", …
Continue reading →