Spent a few hours yesterday trying to get Micro.blog to work better with Calckey (now Firefish). Made progress but not enough. ActivityPub remains extremely difficult to debug without reading the source code for other projects.

Dave Winer ☕️

@manton

it would be great if we had a community project that flattened out all the api's and was accessed through a common api.

why aren't we doing this??

Jason Becker

is this standard just not enough of a standard? It feels weird that there isn’t a shared test suite for the API surface.

Manton Reece

@jsonbecker Yes, a test suite is a frequent discussion. The standard isn’t specific about a lot of little details, so Mastodon’s implementation is kind of the unofficial reference.

Mike Taylor 🦕
Jason Becker

that feels like a huge, way under appreciated barrier to entry for the Metas and Wordpresses of the world.

Manton Reece

@davew Good discussions are happening in the W3C’s Social Web Incubator Community Group but it feels like we’re all playing catch up. I think we need documents like “minimum viable account following”, “account migration”, “how to post” that spell out the absolute basics for servers to work together.

Matthias Pfefferle

@manton what is special with calckey?

Manton Reece

@pfefferle Technically? I wish I knew! My follow requests seem to be ignored, as one example. I did fix an issue with HTTP signatures (it requires the algorithm type to be listed).

Rene van Belzen

So the problem isn’t so much a standard, as how that standard is loosely implemented in slightly differing apis. As often is the case, inter-group communication is a big problem, with or without accreditation to keep things coherent across projects.

Dave Winer ☕️

@manton

I just want one api for posting, updating, replying, generating a feed, subscriber lists.

We’ve been here before, had a common api for blogging tools.

Rob Fahrni

@davew @manton I was under the impression that ActivityPub handled all of these? Perhaps not?

You could always do an updated MetaWeblog to support JSON (since it’s extremely popular) and would it need additional support for authentication?

Manton Reece

@fahrni @davew This is why one of the first things I did in Micro.blog years ago was add MetaWeblog support. It’s a lost art but still works. In theory ActivityPub does have a client API, but most servers use the Mastodon API instead.

Simon Gredal

@fahrni @davew @manton AFAIK ActivityPub only handles server-to-server communication. So you still need a way to interact with your own server.

Rob Fahrni

@manton @davew What stands in the way of folks supporting it these days? Is it not “rich enough” or deemed insecure or is it because it uses XML?

Even systems that want richer support could at least support a small set of methods so you’d have better interoperability.

Tom #8215 Boston Marathon

@manton this never would have happened with Twitter Blue.

Rob Fahrni

@simon @davew @manton Thanks, I did not know that. 👍🏼

Manton Reece

@simon @fahrni @davew To clarify, there are two parts to ActivityPub: server-to-server and client-to-server. Mastodon does not implement client-to-server, so almost no one does.

Katherine M. Moss

Maybe it’s time people base their software off of the spec, instead of off of a singular API? I’m serious. It seems that most AP implements aren’t considered by their developers to be complete unless they are compatible with Mastodon, which seems to require more work.

Manton Reece

@cambridgeport90 Yeah, it’s tricky because Mastodon is so much bigger than other implementations. It might not always be that way.

Dave Winer ☕️

@manton @fahrni

That was very impressive!

Also learned that Wordpress still supports metaweblog, and uses xml-rpc in internal systems.

I’m thinking about this in the design of textcasting as an api.

github.com/scripting/textcasti

Manton, I hope others contribute to this project.

We did it before we can do it again, better.

Katherine M. Moss

Matthias Pfefferle

@manton I had nothing to change for the WordPress plugin and it seemed to simply work. I had the effect that following might take some time, because of the load of the platform and that the button indicator not always worked properly.

Matthias Pfefferle

@manton let me know if I can help!

Simon Gredal

@manton @fahrni @davew Thanks! That’s very interesting, and a shame that Mastodon mono-culture strikes once again.

Manton Reece

@pfefferle Thanks! I’m slowly sorting through issues. One thing that was tripping up Calckey was that my publicKey ID was at a different hostname than the actor URL. (Don’t think that’s actually a requirement in any spec.)

Manton Reece @manton
Lightbox Image