What isn't realtime?


A digital watch.

There are a few heartstopping moments when you have to transfer a Very Large Amount of Money. Will the bank deny the transaction? Will I have to remember my mother's cousin's dog's maiden name? Will the money arrive safely? I clicked the "Transfer Your Life Savings" button on the website. An hourglass appeared. I flipped into the other tab and hit refresh. My balance went from zero to quite-a-bit-more. I flipped back to the first tab. The hourglass faded away and I saw the words "Transfer…

Continue reading →

Thoughts on building an NFC reader for the Framework laptop


Small circuit board.

The Framework laptop has several little slots which can be used be used to expand the functionality of the laptop. They convert the internal USB-C ports into a different sort of port. For example, Framework sells an official HDMI card and Ethernet card: But the community have built their own SD card expansion pack as well as 3D printed snack drawers: Brilliant! I have an NFC-only authentication token which I want to use when I log in with my laptop. I currently have a USB-C NFC reader…

Continue reading →

Viewing my CT Scan in 3D using Linux


Screenshot of a user interface showing a 2D view and a 3D view of my scan.

Several years ago, I had a CT scan of my jaw. The dentist wasn't sure if she was allowed to give me a copy of the scan, which led me to ask "who owns the copyright to my medical images?" I still don't have an answer to the copyright question - but I do now have a copy of a CT scan! Last week - following some dental trauma - I had another scan of my head. The dentist took great delight in showing me my bones in 3D. So I asked for a copy. This was something he'd never done before! So,…

Continue reading →

Book Review: The Terraformers - Annalee Newitz


Book cover showing a towering structure covered in plants.

This is a fascinating story told on an almost geological timescale. It is a tantalisingly glimpse, into a much larger world. It is a story of contradiction - there's an epic universe, but we're stuck in a parochial backwater. It is full of un-human creations - yet its politics are firmly a reflection of the 2020s. I loved the story - it's almost impossible to describe how wild it gets - but found myself continually frustrated with the po-faced nature of the characters. The protagonists are…

Continue reading →

Fifteen MegaWatt Hours from Sunshine - Four Years with Solar Panels in London


Chart 4: Mean domestic electricity consumption (kWh per meter) by country/region. Varies between 2,973 and 3,870kWh.

Just as the UK was entering the first COVID19 lockdown, we got solar panels installed on our roof. Four years later and our generation meter shows they have produced 15,480kWh of electricity. That's a rather impressive 3,870kWh per year. This is what the average UK household uses in electricity: Our roof is non-optimal. We have an East/West split rather than the more usual South-facing panels. We have some big trees near us. And we live in a rainy, cloudy, overcast region of London. We…

Continue reading →

Receive push notifications from your rice cooker


Android alert telling me that the rice is ready.

I have a lovely, and reasonably priced, Mini Panda Rice Cooker. It does not have any SmartHome features. You put in water and rice, press a button, it cooks rice. Nice! The only problem is - I don't know how long the rice will take to cook. It uses "Fuzzy Logic" to work out exactly how much heat and time is needed for perfect fluffy rice. This is inconvenient. I cannot always hear the beep the machine makes when it completes its culinary wizardry. So let's hook it up to the Internet of…

Continue reading →

Restaurant Review: No Catch - Vegan Fish and Chips


Artful photo of a large piece of battered food shaped into a curved fishtail atop a pile of chunky chips.

There's nothing finer to do in Brighton than walk along the promenade eating a wodge of chips the size of your face. But it was raining, so we sat inside and ate all the chips instead. This is Brighton's 100% vegan chippie. As well as big fluffy chips, battered (veggie) sausage, and all the standard condiments - they specialise in fishless-fish. It looks like this: Thick and juicy plant-based protein (available in "Smoked Haddock" or "Cod" flavours), wrapped in a sheet of seaweed, and…

Continue reading →

There's nothing you can do to prevent a SIM-swap attack


Photo of a nano SIM card and its plastic housing.

It is tempting to think that users are to blame for their own misfortune. If only they'd had a stronger password! If only they didn't re-use credentials! If only they had perfect OpSec! If only...! Yes, users should probably take better care of their digital credentials and bury them in a digital vault. But there are some things which are simply impossible for a user to protect against. Take, for example, a SIM-swap attack. You probably have your phone-number tied to all sorts of important…

Continue reading →

A personal WordPress MonoRepo for my themes and plugins


The Logo for WordPress.

I use a self-built WordPress theme for this blog. I also use a variety of self-developed WordPress plugins for various enhancements. I used to publish these plugins, but I get terribly confused by the SVN shenanigans involved, and they weren't used by many people, so I stopped. Recently, I've been moving all my plugin code into my theme. This is sort-of-but-not-quite a MonoRepo. I've also tried to move away, as far as possible, from using other people's plugins. Most of the ones I had were …

Continue reading →

Solved! "Access Point Name settings are not available for this user"


Access Point Name settings are not available for this user.

Android's user-hostile interface never fails to disappoint! I was struggling to get a new eSIM working. I could make and receive calls / texts, but data just wasn't connecting. I tried rebooting, flipping to aeroplane mode, changing bearer, manually selecting the network. Nothing! Then, I remembered my ancient GSM knowledge. All mobile networks need an APN - Access Point Name - in order to connect to data services. Tucked at the bottom of the SIM settings screen is the "Access point names"…

Continue reading →

Caboom! Comment Anywhere, Bring Onto Own Media


A pet cat typing on a computer keyboard.

In the IndieWeb movement there's a concept of "POSSE" - Publish Once, Simultaneously Syndicate Elsewhere. You should publish your words, pictures, songs, reviews on your own site. And then you can choose to share them out to where your audience is. Perhaps that's posting the link on Facebook, or a copy of a photo on Instagram, or sharing the episode on YouTube. There's no shame in meeting your audience where they are - but the canonical version should be somewhere you control. But what about …

Continue reading →

What the UK Government gets wrong about QR codes


A leaflet for Childcare with a prominent QR code.

One of my most memorable experiences in the Civil Service was discussing link shortening services with a very friendly person from the Foreign and Commonwealth Office. I was trying to explain why link shortners like bit.ly and ow.ly weren't sensible for Government use. They didn't seem to particularly care about the privacy implications or the risk of phishing. I needed to take a different tack. "So, you know how .uk is the UK and .de is Germany, right?" "Yes." "What country do you think .ly …

Continue reading →