idk where to really put this (might turn into a blog post later or something). it’s what you might call a “hot take”, certainly a heterodox one to some parts of the broader #fediverse community. this is in response to recent discussion on “what do you want to see from AP/AS2 specs” (in context of wg rechartering) mostly devolving into people complaining about JSON-LD and extensibility, some even about namespacing in general (there was a suggestion to use UUID vocab terms. i’m not joking)
1/?
this is because #fediverse is ignoring context. the implicit context is that
discoverable
means<http://joinmastodon.org/ns#discoverable
> but they don’t know that. so they can’t actually handle the extension in its fullest form.what AS2 calls out as “full support for extensions” requires being able to identify this equivalence and handle it. again, fedi does… let’s call it “partial support”.
the “implicit context” is now a hardcoded but unstated requirement of this “protocol”.
25/?
which is to say: #fediverse software generally expects LD-aware producers to compact against their own “implicit context”, but they don’t always define that context. it’s left undeclared and undefined. or it actually *is* declared, but if you give them their own expanded form then they’ll not understand it.
it’s like someone saying hey, when i say “knows”, i mean “is familiar with”
and then you say “john is familiar with sally”
and they respond WTF? what does “is familiar with” mean?
26/?
it’s like… you literally just told me “knows” = “is familiar with”, but because of your own ignoring of your own context, you can’t handle me saying “is familiar with”?
in this way, as long as the #fediverse remains ignorant of context, they will remain fragile and without any sort of robustness in their “protocol”.
the alternative they have is to extend the only context they share, which is the AS2 one. but this doesn’t solve the problem. it just officially blesses a single term.
27/?
if you want to turn “activitystreams” into a “protocol” then sure i guess you can do that
but why? what are the needs we’re trying to address here? of what purpose is your “protocol”? social networking? you want a “social networking protocol”?
before you convince people that a “social networking protocol” is necessary, you have to convince people that a “social network” is necessary.
but more importantly, you are contrasting that “social networking protocol” against the “social Web”.
28/?
it is my personal belief that this whole “closed-world social network” vs “open-world social Web” thing is leading to a big disconnect that makes addressing people’s needs harder.
because, to be on the “network”, you neglect being on the “Web”.
sure, your software might still publish your “posts” as Web resources, but that’s it. you’re not actually granted control or ability to manage Web resources for yourself.
and that’s why #ActivityPub C2S is being neglected, among many other things
29/?
i am personally more in favor of a “social Web” than a “social network”.
what i want to do is make it easier for anyone to make a website, and to manage that website.
i want those websites to be able to link to each other in well-defined and clearly-understood ways.
i want to make friends and express myself to the fullest, in varying contexts on various websites, without context collapse.
but it feels like #fediverse is more interested in replicating the “social network” paradigm.
30/30
@[email protected] thanks for writing this thread. It sparked a lot of thoughts for me.
I do have one response in the form of a question. What’s stopping you from just doing the thing you want? You don’t really need permission.
@[email protected] me personally? i’m not much of a coder, i’m way better at designing a system and describing how it should work, not so much actually building it. although i am in talks with some folks who seem interested, so uh… maybe check back in like 5 years? 😁 or heck, possibly even two if we’re lucky!
@[email protected] good luck
@[email protected] @[email protected] I’d certainly love to hear more.
addendum 31/30
there’s a whole lot of things i could say about “how we get there” but the thread was getting long enough and i want to cut it off here and clean it up into a blog post or something, without drifting too far off the original topic which was to voice my thoughts about the divide itself
addendum 32/30
there’s a separate thought experiment you could do about what it really takes for a “social networking protocol” because honestly you don’t even need http. you can do “social networking” over xmpp or email or whatever. or invent your own way to send bytes over tcp/udp/whatever (inb4 xkcd)
seriously tho, newsletters and deltachat and movim and a bunch of other things show that you can do it
now available in html form, uri not guaranteed to resolve forever https://trwnh.com/unstable/fedi-vs-web.html
@ anyone who asked for a blog post, this is next closest thing, i don’t really have a proper blog set up and i kinda don’t wanna think about it right now
@[email protected] nice writeup! Just glancing, so without getting into detail, I think I agree.
This is perhaps my own bias in all of this, but it’s interesting that one of the most-consistent aspect of Fedi implementations is their reliance on Webfinger.
I worked on that part because I didn’t think the data format stuff really mattered that much, and at worst was going to be stifling. It was excluded from AP for political, http fundamentalist reasons, but [imho] is essential to the networks functioning.
@[email protected] this was a fascinating read, thanks for sharing. Looking forward to the blog post.
I’ve had thoughts along those lines since I’ve started using Mastodon and getting familiar with AP, which I always saw as an extension of email and Usenet rather than a more general tool for the “social web” —and even for that it’s being held back by the absence of a “content independent” AP server (AFAIK the only one in development is Vocata, and it still has some way to go).
@[email protected] yeah, there’s the old “it’s like email but for websites!” which isn’t terribly inaccurate, but that’s honestly more a consequence of “HTTP POST to ldp:inbox” than anything else in AP. the side effects for each activity kinda stray from that model and go into almost RPC-like territory. there’s also some potential redundancy with HTTP verbs, but that’s because HTTP verbs don’t notify arbitrary audiences (although i guess they could do that with a header!)
@[email protected] Is something like
https://midnight.pub/
or BBS (on the #Gemini protocol):
https://portal.mozz.us/gemini/bbs.geminispace.org/
gemini://bbs.geminispace.org
or Station:
https://portal.mozz.us/gemini/station.martinrue.com/
gemini://station.martinrue.com
or “Message to the void”:
https://void.si3t.ch/
@[email protected] idk but it doesn’t seem like it at first glance. i’m thinking more about something that shows up in a web browser, combined with another thing that lets you author and manage web resources more easily than current tooling
@[email protected] it’s more like “ugh can we go back to blogs and forums and then build from there? we took a wrong turn with the rise of social media”