It sucks that activitypub is so under specified.
-
Dave Mac Farlanereplied to Jenniferplusplus last edited by
@[email protected] How are you planning on doing that? Forking something, or starting from scratch? Either way, that sounds like the dream.
-
@tess yeah. There's a weird part of me that's kind of looking forward to it
-
It may actually be under certain circumstances.
(Please come back and hear me out :blobcatnotlikethisgoogly: )
So we have basically a semantic model thing that grew a bit into multiple directions through different implementations.
Somehow it feels as if we could actually describe what we expect of the protocol and then use some kind of automatic transformation to refactor the protocol into something that matches the requirements.
There could even be "migration paths" to e.g. transform the proprietary MissKey "is-cat" into a general, flexible fursona description.
Maybe it isn't really that complicated if we see the current protocol more as (sorry for the following word) a meta-model or a "semantic requirements model" from which we can derive simpler protocols.
-
Jenniferplusplusreplied to Dave Mac Farlane last edited by
@driusan i started from scratch about 15 months ago. There's no real front end yet, but the back end has the core social media loop in place (sign up, follow, be followed, post, read, scroll). And that loop is very close to being federated over AP (follows work, posts work outbound).
-
I would even argue that the problem is mostly that it is underconstrained.
From what I about AP (which is rather little, I am afraid) is e.g. that there exist multiple ways to express something: From the activity types that are intended for a certain kind of information to throwing everything into one type. And maybe, depending on the use case, even the specific activity types and their use is not that clear.
Part of me thinks that defining a common "canonical form" (maybe in a more explicit way) could help reign in that format.
And maybe there could be preprocessors that transform the legacy forms beforehand, simplifying the actual implementation.
-
@wakame @tess a primary goal would be to make it easy for existing AP backends to run both protocols side by side. So I would reuse many of the semantics provided by AS2. It would be a lot of defining undefined things, constraining arbitrary semantic vocabularies to strict schemas, specifying actual behaviors, and defining real mechanisms for authentication, extensions, discovery, and etc that is all just improvised ad hoc by various current implementations
-
Feels a bit as if we were running the protocol in an interpreter instead of compiling it.
(If that metaphor makes any sense outside my head.)
-
mx alex tax1a - 2020 (4)replied to Jenniferplusplus last edited by
@jenniferplusplus cueing our rant about how ever since OAuth2, we've stopped making protocols and just go on vibes
-
@deadsuperhero Good luck. I have no idea what your personal relationship is like. But in public, you've been extremely measured and far more than fair with him. As someone he *has* blocked, I would worry that he's more interested in extracting concessions from you, than in seeking guidance.
-
Jenniferplusplusreplied to Jenniferplusplus last edited by
@deadsuperhero My nakedly honest perspective is that he's lost too much trust with fediverse implementers. If he wants to try to repair that, fine. But he needs to remove himself from his domineering position in the AP development space until after that repair has happened.
-
Not-so-random thought:
The introduction and first chapters of the ActivityPub spec look like the intention is to create a "simple" protocol.
As in "go ahead, create your own implementation".
The resources linked on activitypub.rocks look like they have the same thing in mind.Which makes me wonder why the result has become so complicated. Maybe because some decisions were deliberately left open?
A lot of the semantic stuff looks/feels/seems to me (who has little practical experience with the standard) as if decisions have been "moved up the ladder" to another layer, so it would be handled by the application implementer.
-
-
Yeah, I totally get the idea of "let's create a framework that lets people create their own ontologies and share information using them". Unfortunately, by being totally unopinionated about any of those ontologies you create a situation in which you have not actually created a standard, but rather a platform on which competing, subtly- (or grossly-) incompatible standards can fight, forever.
-
Jenniferplusplusreplied to Jenniferplusplus last edited by
Anyone who think that I'm picking at flaws around the edges of activitypub should feel free to tell me how one is supposed to ask permission to reply to someone else's post. What message do you send? Where do you send it? How will you know if permission was granted? How will you know the recipient even understood the request? How will other people know the reply exists? How will they know it was permitted?
-
Jenniferplusplusreplied to Jenniferplusplus last edited by
ATProto has answers to these questions. I don't particularly like most of those answers, but they exist. I would know how to implement it. I would know how to make it function at scale. I would know how to make it function with 3rd parties. I would know how to set expectations. I could reason about what's possible and recover from errors and disruptions.
None of that is true of activitypub.
I'm trying to help fix that. You can't do that without acknowledging the situation.
-
Ivy [_gay] Mae :fire_trans:replied to Jenniferplusplus last edited by
@jenniferplusplus I'm currently implimenting activitypub and its a rancid mess. honestly my biggest gripe with the protocol is the undo activity. the fact that an undo can be issued for an undo is the most ridiculous and downright idiotic thing ever because that means you can't just delete things and be done with it. you need to store the undone activity and the undo in case the activity gets undid :zerotwo_big_angry:
-
Jenniferplusplusreplied to Ivy [_gay] Mae :fire_trans: last edited by
@ivy I think I blocked out undo
-
Ivy [_gay] Mae :fire_trans:replied to Jenniferplusplus last edited by
@jenniferplusplus blocked out as in you don't handle it or blocked out as in you have the code blocked out ie like put together?
-
Jenniferplusplusreplied to Ivy [_gay] Mae :fire_trans: last edited by
@ivy blocked out as in my mind just refuses to retain knowledge of the undo activity whenever I'm not actively looking at it
-
@jenniferplusplus "I don't like these answers, but at least they exist" is a _thing_.
It may not solve the problem I want to solve, I may dislike it for other reasons, but at least I can unambiguously implement it and be able to talk to others who are okay with the tradeoffs being made there.