Do riders in autonomous vehicles think that they are in a private space? Here's a fascinating story from California where an robotaxi was redirected from its intended destination and, instead, delivered its misbehaving passengers to the police. The 15-year-old passengers were riding in a driverless autonomous car around San Mateo Monday afternoon. The teens drank alcohol inside the Waymo taxi…
Continue reading →
Let's suppose you've updated the description of your ActivityPub account from "World's Number 1 Taylor Swift Fan" to "This account is now a Nickleback Truther". How do you let the rest of the Fediverse know that you've changed your allegiance? By default, most Mastodon instances won't periodically poll your account information just to see if you've updated it. So how does the information get…
Continue reading →
For years, I've had a test-card at the start of my slides. Before I start my talk, I can immediately see if the aspect ratio is wrong, colours are off, or any other visual issues with the presentation. A few years ago I was invited to give a talk and was assured that the venue was set up for audio as well as video. I dutifully filled my slides with with demo videos containing sound. None of…
Continue reading →
Here's a problem that I've found with ActivityBot - my little ActivityPub server. Sometimes it receives messages which were originally sent months ago. Why does that happen and is it risky to accept and process them? My tl;dr is that it probably isn't worth worrying about. But I'd love someone to tell me why I'm wrong. Here's my thinking: Table of ContentsCausesIs that a problem?What are we…
Continue reading →
I imagine everyone here has received an unsolicited message telling them that their tax is overdue and that they urgently need to visit Genuine-Tax-Payment-Website.fart or that a parcel is delayed at customs and you can pay a small sum for its release at Almost-The-Right-Acronym.ak You know it is a scam. Most people just mark as spam and move on with their day. But a significant number of people …
Continue reading →
This is a gorgeous set of short stories - and a good deal more accessible than some of the heavyweight prose Liu has previously been involved with. Some of the stories contain sentences which are complex jewels to be savoured. What I particularly like is the way he moves between almost-prosaic Earth-bound stories to the the most extraordinary flights of fancy. One story might be set in a…
Continue reading →
If you're reading this, you've probably been hitting your head against a brick wall trying to parse and decipher the new HTTP Signatures sent by Mastodon and other Fediverse servers. This is a basic and somewhat incomplete guide to accepting these signatures. I'm sure there are various gotchas, but it works with the signatures I've seen in the wild. Shut Up And Show Me The Code! OK, wow, no…
Continue reading →
As part of my grant from NLnet to improve my Fediverse bot project, I'm spending time making sure I understand all the fundamentals of ActivityPub. The problem with Internet standards is they're scattered all over the place. Abandoned forums, half-maintained wikis, mailing lists with obscure rules, and monolithic blocks of text. Sometimes you just want one book which collates all the info and…
Continue reading →
The whole point about Shakespeare is that you can set the play on an intergalactic space station or an American high school and keep virtually the rest unchanged. What happens when you transpose Dream from a proscenium arch to a living wood? As the sun sets over the trees, what sprites will come out to entertain us? Ruined Theatre brings a brilliant cast of seasoned West End performers to strut…
Continue reading →
Back in February, I applied for NLnet's Next Generation Zero grant. They were looking for Fediverse projects to help rewild the social media landscape. Or, as they describe it: Reclaim the public nature of the internet Small and medium-sized R&D grants between 5.000 and 50.000 euro, with the possibility to scale up. I run ActivityBot - it is a single-file ActivityPub server suitable for…
Continue reading →
Next to all the code samples on this blog is a little "copy" button. That makes it easier to grab any of the code I've shared. The HTML and JS is delightfully simple: <button onclick="navigator.clipboard.writeText( this.parentNode.getElementsByTagName('code')[0].textContent );" title="Copy code" >⧉</button> The navigator.clipboard.writeText needs a user interaction to w…
Continue reading →
The monkey-punchers at Google never quite seem to finish any of their apps. There's always some useful bit of work left undone, or showstopping bug which remains unfixed, a thousand jagged edges as yet unsolved by the greatest minds of their generation. I wanted to subscribe to an events calendar. I had a URl. I had my Google™ Pixel® phone running the latest Android© 17 with an updated calendar a…
Continue reading →