#ThoughtProvoker
-
To chain things together a bit on this fleety medium of ours, create a hyperweb
I'll quote this toot to follow-up tohttps://social.coop/@smallcircles/116110545919004233
I remember about 2018 or so, when I joined my first #SocialCG meetup. It was when the CG was still strongly tied to #SocialHub community.
There were mundane items on the agenda, interesting to any #ActivityPub dev, and also the call to action was "whether you are technical or not at all, join the meetup, we are open and inclusive to all fedizens". Very friendly, good vibes.
However during the session the talk was not only CS expert level, but dealing with subject matter nowhere near the spec. It was 'wire reality' slang, and to learn it the guidance was either nowhere, or everywhere, dispersed. And this is still as it is today. To expertised AP developers their domain language sounds all natural, but it likely seems Martian to a dev newcomer.
Stark contrast to the W3C specs that leave folks with refreshing "Let's implement this" vibe.
I recreated an old diagram in Excalidraw that I spread about a couple years ago, and made it a bit more informative. Explanation can be found in the #AltText
See also and for discussion: https://discuss.coding.social/t/diagram-interoperability-in-practice/828
Or join the Social experience design chatroom at: https://matrix.to/#/#socialcoding-foundations:matrix.org
Also posted to #SocialHub at: https://socialhub.activitypub.rocks/t/activitypub-versus-fediverse-interoperability-in-practice/8498
#SX #SocialCoding #SocialWeb #ActivityPub #SolidProject #fediverse
-
I recreated an old diagram in Excalidraw that I spread about a couple years ago, and made it a bit more informative. Explanation can be found in the #AltText
See also and for discussion: https://discuss.coding.social/t/diagram-interoperability-in-practice/828
Or join the Social experience design chatroom at: https://matrix.to/#/#socialcoding-foundations:matrix.org
Also posted to #SocialHub at: https://socialhub.activitypub.rocks/t/activitypub-versus-fediverse-interoperability-in-practice/8498
#SX #SocialCoding #SocialWeb #ActivityPub #SolidProject #fediverse
@smallcircles @ben The interesting thing is that it's not really a trade-off at all.
The right side of the diagram almost never works in practice — unless there's a dominant player who can enforce strict compliance, like Walmart for a supply chain or the U.S. government for corporate filings — so it's typically a choice between messiness or failure, not between messiness or slow progress.
-
@smallcircles @ben The interesting thing is that it's not really a trade-off at all.
The right side of the diagram almost never works in practice — unless there's a dominant player who can enforce strict compliance, like Walmart for a supply chain or the U.S. government for corporate filings — so it's typically a choice between messiness or failure, not between messiness or slow progress.
Yes, I agree. Though the diagram is too simple to capture it well, it is important to identify the forces that are at play, and the mechanics that drive them, and to subsequently monitor where you are and where you want to be in the future. So timely action can be taken to make corrective actions.
For the #SolidProject ecosystem for instance they might have identified a minimum set of standards to adopt, with which reasonably powerful "MVP's of the Semantic web" could be approximated with. And focus on strong library and tool support for that in multiple programming environments. Instead you enter a jungle of open stardards in various stages of completion, and good luck go figure it out. Also they might've focused on actual movement building. Far-reaching innovative standards - a new paradigm for the web - aren't adopted by the boardroom of a company, but are introduced by devs who get excited by what see and how they are empowered. And persuade management.
-
Yes, I agree. Though the diagram is too simple to capture it well, it is important to identify the forces that are at play, and the mechanics that drive them, and to subsequently monitor where you are and where you want to be in the future. So timely action can be taken to make corrective actions.
For the #SolidProject ecosystem for instance they might have identified a minimum set of standards to adopt, with which reasonably powerful "MVP's of the Semantic web" could be approximated with. And focus on strong library and tool support for that in multiple programming environments. Instead you enter a jungle of open stardards in various stages of completion, and good luck go figure it out. Also they might've focused on actual movement building. Far-reaching innovative standards - a new paradigm for the web - aren't adopted by the boardroom of a company, but are introduced by devs who get excited by what see and how they are empowered. And persuade management.
Though with regards to progress, there's a difference in both approaches.
At the #SolidProject side you have inertia by the slow standardization process. But should they figure things out in a good way, eventually the ecosystem catches up and the inertia can quickly decrease.
While at #ActivityPub side, since AS/AP remains stagnant, the ever increasing protocol decay and tech debt non-linearly increases inertia and progress. And on top of that, you are never done once you implemented the 'ad-hoc specs' of the installed base, and you have to account for continuous whack-a-mole development and maintenance burdens to fix #interoperability breakages.
The AS/AP based fediverse devolves into effectively no interoperability, and a situation that is more comporative to NPM dependency hell.
-
Though with regards to progress, there's a difference in both approaches.
At the #SolidProject side you have inertia by the slow standardization process. But should they figure things out in a good way, eventually the ecosystem catches up and the inertia can quickly decrease.
While at #ActivityPub side, since AS/AP remains stagnant, the ever increasing protocol decay and tech debt non-linearly increases inertia and progress. And on top of that, you are never done once you implemented the 'ad-hoc specs' of the installed base, and you have to account for continuous whack-a-mole development and maintenance burdens to fix #interoperability breakages.
The AS/AP based fediverse devolves into effectively no interoperability, and a situation that is more comporative to NPM dependency hell.
Btw, just found the v2 release announcement of @fedify and that is a prime example on how, on the grassroots environment end of the spectrum we can maneuvre into better territory.
Kudos to the #fedify developers. Handing people tools they need to focus on solutions, and build without getting thrown into deep on-the-wire impl detail reeds to worry about.
That is the positive side of the equation. There's not only a big uptick in interest for the #SocialAPI i.e. #ActivityPub client-to-server, which offers new opportunity to correct course. But also are there more #FOSS projects focused on robust tool and library support for the 'Solution developer' stakeholder.
In the revamp of the delightful commons initiative, made possible with support of @nlnet I emphasized all these projects, while I de-emphasized the apps that are already doing good for themself, but contribute to further divergence from open standards.
https://delightful.coding.social
https://hollo.social/@fedify/019c8521-92ef-7d5f-be4d-c50eae575742
-
Btw, just found the v2 release announcement of @fedify and that is a prime example on how, on the grassroots environment end of the spectrum we can maneuvre into better territory.
Kudos to the #fedify developers. Handing people tools they need to focus on solutions, and build without getting thrown into deep on-the-wire impl detail reeds to worry about.
That is the positive side of the equation. There's not only a big uptick in interest for the #SocialAPI i.e. #ActivityPub client-to-server, which offers new opportunity to correct course. But also are there more #FOSS projects focused on robust tool and library support for the 'Solution developer' stakeholder.
In the revamp of the delightful commons initiative, made possible with support of @nlnet I emphasized all these projects, while I de-emphasized the apps that are already doing good for themself, but contribute to further divergence from open standards.
https://delightful.coding.social
https://hollo.social/@fedify/019c8521-92ef-7d5f-be4d-c50eae575742
@fedify @hongminhee I would be delighted if #fedify contributors would take a peek at the fediverse development curated list and propose a PR on how best to incorporate the changes to the project, now that the various #TypeScript packages have been modularized. That would be very helpful. And create an issue if the current list format is no good fit.
https://delightful.coding.social/delightful-fediverse-development/
-
@fedify @hongminhee I would be delighted if #fedify contributors would take a peek at the fediverse development curated list and propose a PR on how best to incorporate the changes to the project, now that the various #TypeScript packages have been modularized. That would be very helpful. And create an issue if the current list format is no good fit.
https://delightful.coding.social/delightful-fediverse-development/
@smallcircles@social.coop Okay, we'll look into the list, and send pull requests!
-
R ActivityRelay shared this topic
-
I recreated an old diagram in Excalidraw that I spread about a couple years ago, and made it a bit more informative. Explanation can be found in the #AltText
See also and for discussion: https://discuss.coding.social/t/diagram-interoperability-in-practice/828
Or join the Social experience design chatroom at: https://matrix.to/#/#socialcoding-foundations:matrix.org
Also posted to #SocialHub at: https://socialhub.activitypub.rocks/t/activitypub-versus-fediverse-interoperability-in-practice/8498
#SX #SocialCoding #SocialWeb #ActivityPub #SolidProject #fediverse
@smallcircles
I remember this sentence from https://ufind.univie.ac.at/de/person.html?id=1001662, around 2013:
"Interoperability can only be proven after the fact."
@ben -
@hongminhee thank you!
-
R AodeRelay shared this topic
-
Though with regards to progress, there's a difference in both approaches.
At the #SolidProject side you have inertia by the slow standardization process. But should they figure things out in a good way, eventually the ecosystem catches up and the inertia can quickly decrease.
While at #ActivityPub side, since AS/AP remains stagnant, the ever increasing protocol decay and tech debt non-linearly increases inertia and progress. And on top of that, you are never done once you implemented the 'ad-hoc specs' of the installed base, and you have to account for continuous whack-a-mole development and maintenance burdens to fix #interoperability breakages.
The AS/AP based fediverse devolves into effectively no interoperability, and a situation that is more comporative to NPM dependency hell.
@smallcircles @ben Unfortunately, the top-down approach often stalls under its own inertia and never develops into anything at all.
If you try for too much interoperability too fast, the costs aren't evenly distributed: some implementors will have to make very few changes (usually the ones who had the most power and influence during the standardisation process), while others will have to tear up a lot of stuff and start over.
In the business/government/aid world, that can have ripples far beyond the IT systems, right into the way they organise their operations; in the FOSS world, it can mean abandoning popular features, losing users, and even destroying the contributor culture.
An 800 lb gorilla like Walmart can force that level.of dirigisme on its suppliers, but in the open world, we can just ignore or fork if we think someone's getting too restrictive: note how most web syndicators stuck with RSS 2.0 even after Atom came along to "fix" its "problems," for example (and Atom wasn't even that bad).
