Note: in hindsight, half of this post is answering my own questions as I explore this rarer side of federation, but there are still some remaining questions which I have highlighted.
This post is created on lemmy.ml. The benefits of federating this post to other Lemmy instances is immediately obvious, since they can use most or all of the site features to read it as intended and interact (voting, replying, reporting, saving, cross-posting or browsing and subscribing to firstname.lastname@example.org).
There is also intuitive benefit in being able to federate with other link aggregators such as lotide and Prismo instances. All these sites have the same basic interface of link-posting, text-posting, voting, commenting and voting on comments. The base format is very compatible, even if extra features are not. I wouldn’t be surprised if Lemmy and lotide form a dynamic similar to Mastodon and Pleroma, two microblogging services which again have an intuitive base compatibility.
What are the benefits of, for example, making Lemmy federate with Mastodon, Friendica or PeerTube?
One approach to answering that is asking what cross-interaction is already possible, like some posts in !feditolemmy which were posted from Friendica. This nerdica.net post which is also replicated on !fediverse shows a conversation in replies between a few Lemmy instances and a Friendica account, and demonstrates the clear analogue of our communities and their forums, and of our votes and their likes (it’s just a test ;) )
So Friendica posts federating to Lemmy makes reasonable sense. I’m not sure about the opposite. I guess their posts are analogous to our text posts or text & link posts, so it might be possible to render their forums as browsable communities here.
Question 1: Does my Lemmy account browsing and making new posts on Friendica forums make sense? Or will the federation only make sense for enabling Lemmy to aggregate Friendica posts and allowing cross-rating and cross-commenting?
Note: I found this Friendica forum on Lemmy, which was properly interpreted as a community instead of a user by Lemmy, but posts aren’t replicating yet. I’m guessing it’s a base for future completion to allow further cross-integration. Friendica does not appear to be able to browse Lemmy users or communities yet.
I also assume microblogging sites like Mastodon and Pleroma, along with the Prismo link aggregator, can use hashtags as an analogy for communities. While a post on those sites can belong to multiple tags, Lemmy can imitate this with crossposting in multiple communities. Is this reasonable?
PeerTube is where I get more confused, and I’m not alone. As a reply there mentioned, we can view a PeerTube user account, such as https://email@example.com and https://firstname.lastname@example.org , although it doesn’t seem to work for framatube.org.
However the interfaces of Lemmy and PeerTube are radically different, as PeerTube is foremost a video hosting site and Lemmy is a link aggregator. I think it’s fair to assert that a Lemmy post cannot be displayed on a PeerTube instance without hacks no-one wants, which leaves PeerTube->Lemmy posting, and mutual liking/commenting/reporting/etc… A PeerTube video can be adapted as a link post in Lemmy. I’m not certain how a PeerTube upload would signal which communities it should be posted to in Lemmy, but there are reasonable options like an extra field in the upload settings, or a link in the description.
Question 2: Is there a plan to have anything more than PeerTube creating link posts in Lemmy communities with federation between comment sections?
Trying to learn the current situation in order to ask good questions has taught me a lot, I was in a mindset that we had to be able to make posts on other sites in order to usefully federate, when that isn’t really our role as a link aggregator site. Media sites can usefully post to here with federated voting and comment sections.
A community dedicated to fediverse news and discussion.
Fediverse is a portmanteau of “federation” and “universe”. It is a common, informal name for a federation of social network servers whose main purpose is microblogging, the sharing of short, public messages.
Getting started on Fediverse;
One core benefit of federation across a common protocol is content visibility. Even if you can only interact with the content in a restricted way due to the differences between platforms, it’s still great to have more content available. This aspect also helps smaller platforms grow as they can tap into the user base of larger established platforms.
For example, I can follow people on Pixelfed from my Mastodon account and comment on the posts. The fact that I don’t have to make a separate account to visit Pixelfed lowers the barrier for interacting with the site.
In my opinion, open federation over ActivityPub is one of the biggest differentiation from commercial social media. Commercial platforms intentionally make it all but impossible to interop because they see each other as competition. Every platforms wants to be a walled garden jealously guarding their user base from others. This is one of the reasons we see proliferation of screenshotting content to move it between platforms.
Fediverse is the exact opposite of this model. Each platform makes it as easy as possible to interop with others, and everyone jointly benefit from the totality of the content available on the network.
The many fediverse apps out there really are fundamentally compatible. The primary difference is UX and not so much how a post could be interacted with (although more complex operations can be done with e.g. forgefed)
So really this makes them more suited to be AP Clients rather than Servers.
I think SOLID is an interesting approach to this. And AFAIK their inbox API is AP compatible.
While SOLID focuses mainly on data storage, there is another approach that I think is better which focus on Author Origination. Even if foreign software creates the object or an interaction description, it is signed and disseminated via an author controlled platform, and not by the site/software that turns UX input into an object or interaction with an object. Thus retaining all the benefits of SaaS without giving up data sovereignty nor identity sovereignty.
I like to look at the potential of the Fediverse in terms of what the open interoperability standards (notably ActivityStreams and ActivityPub) and their Linked Data extensibility could bring. Then it helps to think in terms of ‘business domains’ i.e. particular areas of expertise that software is targeted to.
Right now the Fediverse is mostly offering features in a Microblogging domain. There’s so much focus on this that we come to think of ‘adding federation support’ as adding timelines, comments, boosts, likes, etc. But with Linked Data there is no restriction as to what application types - i.e. apps targeting different business domains - we could potentially integrate with.
Forgefed is a good example of this. Although in terms of ‘business domains’ it is not sliced optimally, imho. What forgefed tries to do is create a common denominator for Code Forges to interoperate. But code forges aren’t a domain (or rather it is an application domain, not a business domain). You won’t find a Code Forge Manager as a domain expert. A code forge is just a tool to help with Software Development, and this is the top-level domain. A breakdown into sub-domain may give you Revision Control, Quality Assurance, Project Management, etc.
Consider Github. It has established a dominant position in the developer landscape. 1,000’s of companies and FOSS projects deliver stuff that builds upon Github API’s, trying to add some additional value. With open standard domain-specific extensions all that will be democratized. And there would be possibilities to mix, match, reuse that do not exist now. Take Project Boards for instance. Github and Trello… they mostly overlap in their feature set. You choose one or the other. But were they federated based on the same vocabulary definitions, they might use the exact same data to render their UX. Now a Trello user can seamlessly interact with a Github user from their project board.
Note that in the case of ForgeFed I am a proponent to broaden this initiative into defining, what I call, the Free Software Development Lifecycle or FSDL.
Were the Fediverse to evolve along a domain-driven approach to creating interoperable extensions then a lot of power would be unleashed, that now is still dormant. I feel that here is the “unique selling point” that will allow Fediverse to start competing against the proprietary walled gardens that are all around us. If the ecosystem evolved like this, then more and more it will create its own network effects across a wide variety of different fields.
This is just some random example of where fedi could be going towards. But there’s a long way to go before we can get there. We have to tackle some real challenges first.
There are different limitation in ways you can interact depending on the server you are using. For example:
- if you are on Lemmy, you cannot follow other users or being followed
- if you are on Mastodon, you cannot downvote or quote-share
So, while the situation where these are just clients for a generic AP server can be argued to be desirable, this is not how it works at the moment
It seems like the function of link aggregators necessitates being able to access different types of content in a format that’s not exactly ideal for all of them but is great for people who want to comment on things. Like pixelfed, peertube, plume, etc. all are specialized to specific formats of posting to highlight the content being shown. But Lemmy, as a reddit analogue, should be able to un-specialize those formats and display them in a generic UI. The problem is that every format does ActivityPub a little bit differently, so you have to make an ‘interpreter’ for each AP implementation.
Specialized AP services don’t necessarily need to worry about this because, like, how is peertube going to render a masto post without a video in it? Why would a Plume user want to read a microblog when they signed up to read/write longform blogs? On the other hand, a Lemmy user wants to view and comment on anything and everything. And if the comments are appended directly to the source material while still being viewable on Lemmy, then the utility is increased.
I agree with your point, let me just add that I would not be that firm in categorizing blogging as a specialized service, as a blog article may embed other pieces of media, so has its own challenges
I agree, generally, but I’m more speaking in terms specifically referring to Plume and Writefreely.
Fair enough !
Very interesting discussion post !
As for currently existing interaction, aside from the very recent possibility to publish from Friendica, there has been from month the possibility to follow Lemmy communities and comment in them from Friendica, Mastodon and others. So people can participate in Lemmy conversations and integrate them in their fedi timelines, be notified for replies in fedi notifications without having to seperately connect on Lemmy.
I hadn’t though too much about Friendica forums, but it is indeed a good perspective to integrate them for Lemmy users. As someone who does not regularly use then, I must say I don’t see the difference in purpose between them and Lemmy communities.
As for Peertube, think about a community like !tilvids, where interesting threads about a specific Peertube video are created every day. Wouldn’t it be nice if those where actual comment threads on the video? To put it differently, if link posts with Peertube links were actually reposts on the community.
Other comment on Peertube : wouldn’t it make sense to follow a peertube channel from Lemmy? After all, a Peertube post is just a post with a video attachment, and a channel is just a community where only the creator can create posts (but all members can comment)