@kity @cwebber I've read your post and while I understand the intent, I have a really hard time figuring out how generic ActivityPub client could work and be useful.

In my mind, ActivityPub deals with the transport/data layer by providing a standard way to represent objects, activities and broacdcast those over the federation.

But how can a client implement a generic and meaningful UX for every server?

@kity @cwebber Sure, you could imagine writing a client that could post to both Plume, Mastodon and Pleroma servers, assuming they support C2S protocol.

But Plume supports Markdown, while Mastodon doesn't. I don't know for Pleroma but you get the idea.

How would the client know what the server support in terms of features?

@kity @cwebber also, projects handle different types of data.

Funkwhale and PeerTube instances deal with Audio and Video media, respectively, PixelFed with images, Mastodon and Pleroma with small-to-medium text, Plume and Write.as with long-form content, etc.

Do you think it's possible to provide a unique and comfortable experience for all those projects ?

@eliotberriot @kity@pl.kity.wtf I guess since that was the goal of MediaGoblin, I still hold onto that vision. It's also more true on platforms like Facebook and Google Plus (RIP) than it is on Twitter and some others.

@eliotberriot @kity@pl.kity.wtf I think if ActivityPub had launched with a more facebook-like flagship implementation rather than a twitter-like one, people would find this less surprising

@eliotberriot @kity@pl.kity.wtf You're right that some level of server feature discovery needs to be done though, and we haven't quite implemented how to do that. XMPP may be a source of inspiration there.

@eliotberriot @kity@pl.kity.wtf I also think that @emacsen is right that the "streams" activitypub property may be a way to help here

@cwebber @eliotberriot @kity

The big secret here is that I'd asked "everyone other than Chris" to answer the question at FOSDEM, it's because I'd already asked them this exact question on IRC a month before and they suggested using streams exactly in this way. The reason I didn't want Chris to answer was I was curious to knew what the implementers were thinking (and I already knew what Chris would be likely to say).

@emacsen @cwebber @eliotberriot @kity how would `streams` help with this? my understanding of streams was that they would be used a la Collections on Google+, for arbitrary subsets of your outbox. unless you mean creating a separate stream for each type of payload?

@trwnh @cwebber @eliotberriot @kity

Maybe I misunderstand the issue but I think part of it is that right now people are okay with having N ActivityPub identities in a way that mirrors their proprietary service life. "Mastadon, PeerTube, Pixelfed" each on their own. But if you moved the bar the other way, to each of those being some sub-stream of your general AP identity, then you'd insist on a client (or c2s model) that was flexible enough to handle it.

@trwnh @cwebber @eliotberriot @kity

Thinking about the issue of the poor state of C2S ActivityPub, implementations, maybe the thing to do is make a new AP client (without a server) that does what we want and is designed to be flexible, and then see which servers support it.

The only big downside I see is that AP doesn't have a standard authentication mechanism, but maybe that can also be modularized and abstracted.


@emacsen @trwnh @eliotberriot @kity@pl.kity.wtf I honestly think that oauth 2.0 bearer tokens work just fine for auth, and that's what the AP test suite required

· · Web · 0 · 0 · 0
Sign in to participate in the conversation

The social network of the future: No ads, no corporate surveillance, ethical design, and decentralization! Own your data with Mastodon!