Desired changes for a future revision of ActivityPub and ActivityStreams

So, this thread has been interesting. There’s certainly a lot of stuff we would like to change. However, the path forward seems… hard to say the least. As @silverpill said near the start of the thread:

I get the sentiment - of course breaking changes are uncomfortable. It would require a lot of work from implementers, who would probably need to support both AP 1.0 and AP 2.0 for a while, potentially a very long time. Existing FEPs and other related stuff would probably not function at all for AP 2.0.

But is keeping AP 1.0 at all costs for perpetuity a viable path forward? As a potential implementer, I personally don’t see myself working on an AP implementation in the protocol’s current state as explained here. I am some 5.5k LOC into an implementation (not very far but hey) and this has forced me to learn about the current problems of AP, and I feel like giving up as the problems are too big to buy into. There’s also the fact that the longer we wait, the higher and higher the cost for switching will become.

What would switching even look like? We’d need to align (how?) on basically an entirely new protocol, which would need to be written (how? where? by who?). Even calling it AP 2.0 might be disingenuous as it would probably be nothing more than a spiritual successor. We’d need extremely wide agreement to avoid a fracturing of the ecosystem into AP 1.0 and AP 2.0. We’d then need implementers to support AP 1.0 and AP 2.0 at the same time for a while, deprecating AP 1.0. Then, after probably a long time, implementers could remove AP 1.0 support. But does this even sound realistic?

By the way, surely this is not the first time desired changes have been discussed? Are there any older discussions anywhere that touch on any more problems or desired changes?

2 Likes