The tooth, the whole tooth, and nothing but the tooth


X-ray of teeth on a computer monitor.

You know that ice-breaker game "Two Truths And A Lie"? When I'm forced into some mandatory office fun, I always say... I've sat in the seat of a space shuttle. I still have two of my baby teeth. I used to be a voice-over artist. Well, one of those truths is about to come crashing down. When I was younger, I had two of my adult teeth removed. They were coming out at such a crazy angle that they couldn't be tackled with braces. So they were surgically yanked out. I was a teenager at the…

Continue reading →

Theatre Review: Murder Trial Tonight II - Aldwych Theatre


Promotional poster. The words "Murder Trial Tonight" appear superimposed over an efit of a male suspect.

Overwrought melodrama in London's most uncomfortable theatre. This show has been done countless times before. You, the audience, watch extracts from a murder trial. At the end, you vote on whether she done it or not. It feels more suited to a Channel 5 show which asks punters to text their verdict in to a premium rate number. Overall, it is a tawdry - but thoroughly uninteresting - tale. The main problem (aside from the naff script) is a complete lack of respect for the audience. In an…

Continue reading →

.well-known/avatar


Edent Shouting into a microphone.

Hot on the heels of a post I wrote 4 years ago, wouldn't it be useful to have a well-known URl for user avatar images? When I sign up to a web service, I don't want to faff around uploading an image to use as my avatar. I want that service to look at my email address or social-sign-in and automatically pick up my preferred graphic. Here's how I see it working. A user signs in to a service with the email address username@example.com In a similar way to WebFinger, the service makes a request…

Continue reading →

Review: Ross Noble's Jibber Jabber Jamboree


The bewildered face of Ross Noble staring out of a jungle.

"This is a show which rewards punctuality!" Thus spake Ross - they only comedian I know of who can successfully heckle his own audience, chastise himself for doing so, go on a twenty-minute segue about cancer-sniffing dogs, and then return (more-or-less) to where he started. It is exhausting to watch him prance around the stage, screaming at invisible interlocutors, and miming the painfully slow death of a slug being dehydrated by the tears dripping down the face of a crying man. At times he…

Continue reading →

How updates work in ActivityPub / Mastodon


Logo for ActivityPub.

I didn't realise this, so I'm documenting it to stop other people making the same silly mistake that I did. Messages in ActivityPub have two distinct ID strings. Here's a (truncated) view of what happens when I send a new message on Mastodon: "id": "https://mastodon.social/users/Edent/statuses/1234567890/activity", "type": "Create", "actor": "https://mastodon.social/users/Edent", "published":…

Continue reading →

I made a mistake in verifying HTTP Message Signatures


A pet cat typing on a computer keyboard.

It's never great to find out you're wrong, but that's how learning and personal growth happens. HTTP Message Signatures are hard. There are lots of complex parts and getting any aspect wrong means certain death. In a previous post, I wrote A simple(ish) guide to verifying HTTP Message Signatures in PHP. It turns out that it was too simple. And far too trusting. An HTTP Message Signature is a header which is separate to the message it signs. You might receive a JSON message like this: { …

Continue reading →

Notes on installing GrapheneOS on a Pixel 8 Pro - some bugs & oddities


Pop up saying it was unable to fetch a list of apps.

These are notes to myself - and anyone else who finds them useful. Before starting, I booted the Google OS to install the latest firmware and an eSIM. After a few days of enduring Google's naggy software, I was ready to commit to installing something better. I tried using the Web Installer. It managed to flash some of the partitions and then failed with: Failed to execute 'claimInterface' on 'USBDevice' So I used the CLI instructions which were comprehensive. Worth re-reading them a few…

Continue reading →

Movie Review: Poor Things


Poster for Poor Things.

Yes. Every single frame of this movie is a delight - even the closing titles. It is an explosion of outrageous colour, extravagant lenses, and delirious shots. Like an Escher woodcut electrified into life. I adored director Yorgos Lanthimos' earlier film The Lobster - this feel almost like that film was injected with several million more dollars and a sprinkling of psychedelics. This magic is what happens when you give creative people freedom to be as weird as their dare. As beautiful as it…

Continue reading →

Can you trust ProtonApps.com?


Screenshot of the ProtonApps page.

I've recently signed up to the privacy-preserving service Proton. All the email, calendar, drive, VPN, and other services seem to hang off the proton.me domain. I wanted to download the Android apps to my phone - without using the Google Play Store. The VPN app is on F-Droid but none of the others are. So, because I'm lazy, I Googled "Download Proton Mail". I landed on https://protonapps.com/. It looks like a genuine site. But is it? .me is signed by Let's Encrypt, whereas .com is…

Continue reading →

OpenBenches on the Volunteer Technologist Podcast


Screenshot of a podcast player.

I was delighted to be interviewed by the Volunteer Technologist podcast about our OpenBenches project. Huge thanks to Gene Liverman for having me on. It is available, as they say, wherever you get your podcasts. …

Continue reading →

The Force is Irrelevant in Star Wars


Two robots embracing.

I've been watching the new 4K77 fan-releases of Star Wars (AKA - A New Hope). It is amazing seeing the graininess of the original picture and hearing just how lush the original stereo soundtrack is. There's even some good bonus content in terms of a long-lost LaserDisc commentary. But rewatching the film made me re-asses what I thought I knew about The Force. My childhood was dominated by trying to perform telekinesis and mind-reading. In retrospect, those are mostly artefacts of Empire and…

Continue reading →

Virgin Media preparing to offer symmetrical upload speeds?


List of proposed upgrades including Symmetrical data add on for £4.

Virgin Media - a UK-based fibre-optic ISP - recently sent me a survey about their potential product offerings. It was desperate to know if I wanted bundled streaming video (no), or Sky Sports (LOL no), or any other digital subscriptions (no, go away), or a landline (what, is this the 1990s?). They even wanted to know if I'd pay extra for priority support. In amongst all the other offers, they asked whether I would be interested in paying more for symmetric Internet speeds! Here are some…

Continue reading →