I wish them well but ActivityPub feels to me a bit like XMPP: makes sense at a "techie's abstraction" level, but unless you can drag whole communities away from their favourite walled gardens, it won't get enough traction.
My advice would be to target the teens. They seem to switch social nets at the drop of a hat (speaking as the father of one). Get a bunch onto your network, then let them experience the fact they can still speak to their mates on another network. Then the penny might drop and you'll soon get them proselytising about the benefits of federation.
Did anyone ever create a good open-source library that apps can use, so they can build Fediverse features (sending posts, receiving posts, etc) into pre-existing web apps without having to implement the protocol from scratch?
I know the protocol looks fairly simple at first glance but it takes about 2 man years to build a decent implementation, which frankly just means it's too complicated. Sending text ultimately should not be that hard. One huge point of friction I found with the protocol was the failure to just make things type-safe. You have lots of object properties that are "Sometimes a string", "Sometimes an array", etc. That makes all your models super ugly and all your marshaling super ugly.
By comparison, Nostr proved you certainly can avoid all the complexity. Nostr got it right. Nostr kept it simple. And Nostr is censorship resistant unlike the Fediverse which is full of politically motivated admins who love to maintain "block lists" to be sure no "Other Viewpoints" (that disagree with their own) are allowed to proliferate. Admins were having their entire servers blocked simply for saying something nice about some POTUS candidate for example. That just creates a very toxic environment, from all the people who of course claim they're fighting toxicity.
Check out Fedify. There are still advantages to bespoke protocol implementation, but this is the closest we've gotten so far to "protocol-in-a-box", and it's great.
As a biased[0] party I must mention that the Go programming language has at least one and a half libraries in the form of Go-Fed[1] and Go-ActivityPub[2].
I'm not sure if the Fediverse is the right solution, but it is definitely the right direction. Corporate owned social media has given us the same information control issues that corporate owned news media has: censorship and narrative control. Coupled with Citizens United, it's destroyed journalism and trust in government. The only way we regain trust in both is to make it transparent and put it in a non-profit status. Here's hoping it works.
They just need to focus some dev resources on signed posts, and the ability to move those signed posts between nodes. That should be their number one priority imho.
I believe that in order to successfully and safely move posts between nodes they need to be immutable and signed. Because you're essentially creating a new history on a new node.
You can't move between nodes, because, unfortunately the usernames in ActivityPub have the server name embedded into them like an email address. Nostr fixes that by having user identity be basically a crypto signature instead.
Which is why you'd need to sign your posts first, so that you can migrate to a new node, use the same key, re-create your old signed history on the new node.
Whichever way they choose to resolve this issue I think it's a major pain point for the fedi to grow.
From an end user standpoint Nostr is way too complex. If we're talking about the fedi being complex, Nostr can forget about it.
But maybe you can prove me wrong. I setup my first fedi node back in 2017 in minutes because there was a container image, people could start signing up immediately. Can you show me how to do the same in Nostr?
Implementation details of an app are what make the difference between "ease of use" or not by end users. That's not a 'protocol issue'. I've implemented both a Fediverse and a Nostr implementation from scratch before, and had them running. I ended up abandoning both for separate reasons. I speak from experience when I say ActivityPub is a nightmare to implement and Nostr is easy.
What Nostr got right is that the core of the system needs to be very simple and be ALL that's REQUIRED to join the network, and with Nostr you're just signing a JSON object with your crypto key and you're DONE. And Nostr objects can live "anywhere" too because the user identity is in no way attached to a DNS name. With ActPub your lovely "Admin" (who might hate you and your politics) becomes your god, because once you build up a following on a specific name, you must bow down to your new god, because they are the TRUE owners of your name.
pay attention to this space. the puck is moving to this direction (finally!!) and like wayne gretzky and steve jobs famously related it's good to skate in the direction it is going to be.
Evan Prodromou, the creator of StatusNet, the OStatus protocol, and co-author of ActivityPub, is launching a dedicated nonprofit for the purpose of advocating for and supporting the Fediverse.