Terence Eden. He has a beard and is smiling.

Terence Eden’s Blog

Theme Switcher:

I paid people to try and follow my README

· 12 comments · 700 words · Viewed ~35,233 times


A tiny lego Storm Trooper eats a chocolate coin.

Developers suck at writing documentation. We like to say RTFM but often there ain't no FM to R. At best we have a half-arsed collection of notes, some obsolete tips, and a link to a desolate forum full of people asking the same questions again and again. That's no way to treat our users. I naïvely believe there's a better way. As I've written before, you should sit down and actually test your …

Some quick thoughts on Unit Testing ActivityPub

· 3 comments · 600 words · Viewed ~1,470 times


The PHP logo.

I'll be radically honest here - I never really got the idea of "Test Driven Development". I'm much more of a "telnet into production and damn the consequences" kind of guy. Look, it's much more fun and my cardiologist recommends severe shocks every now and again. The essence of unit testing is pretty simple: Feed a function some data See how it responds Send it good data and if it returns…

ActivityPub - How to send an updated user profile to Mastodon and the Fediverse

· 350 words · Viewed ~1,389 times


Logo for ActivityPub.

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…

ActivityPub - Is it worth defending against replay attacks and message/signature time skew?

· 5 comments · 1,750 words · Viewed ~1,981 times


Logo for ActivityPub.

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…

A reasonably practical guide to validating RFC 9421 HTTP Signatures for ActivityPub in PHP

· 2 comments · 900 words · Viewed ~1,394 times


A padlock engraved into a circuit board.

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…

ActivityBot is the recipient of an NLnet grant!

· 6 comments · 1,750 words · Viewed ~2,273 times


NLnet logo.

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…

Some updates to ActivityBot

· 1 comment · 1,150 words · Viewed ~738 times


Logo for ActivityPub.

I couple of years ago, I developed ActivityBot - the simplest way to build Mastodon Bots. It is a single PHP file which can run an entire ActivityPub server and it is less than 80KB. It works! You can follow @openbenches@bot.openbenches.org to see the latest entries on OpenBenches.org, and @colours@colours.bots.edent.tel for a slice of colour in your day, and @solar@solar.bots.edent.tel to see…