Genuine inquiry . Maybe I am not experienced enough with the various federated platforms but I am an avid user of matrix, and have dabbled in lemmy. From what I have seen is federation is on the path to decentralization but not fully there. It creates fiefdom, little kingdoms . Great yes you may find one that suites you better, but users now can end up isolated to their island, switch island sure but now you are isolated for the previous island and maybe others. Its stupid. On matrix you need to know the other island(server) to even find its rooms(communities). Some rooms block users from one server while others block users of other servers. You either have to run multiple accounts or accept the limits. Add in you are at the mercy of your home server, you can lose your account have it immitated, and more. The performance is horrible not sure why, but content is slow to update and spread. Matrix has the problem because of its design most people are on the matrix.org server and so the point of federation is largely lost. They are moving to p2p where it seems the solutions for federation now dont apply.

Anyway why is federation not stupid? Are these problems only with Matrix? Cause I look at lemmy and it seems far worse.

@nutomic@lemmy.ml
link
fedilink
19urte bat

Instance blocking and user blocking are features, not problems. Most users want to block trolls for example. If you dont like that, you can make your own instance without, or just go back to commercial social media. The rest of your rant seems exclusively to Matrix, not Lemmy. I think you should spend more time here (or on another instance) before you really judge it.

@lemm1ngs@lemmy.ml
creator
link
fedilink
5urte bat

You are correct I need to spend more time here.

Realistically most people are not going to run an instance . Blocking does become a problem when you dont run an instance because most do some blocking or are blocked. Even if you run an instance at some point for any reason it could also be blocked.

Yes my rant is not solely targeted at lemmy put mainly Matrix because that is what I use. I should probably look more at mastodon and some others too. Federation has a lot of spins on the technology.

Its nice that you still get involved with users here, the matrix devs are also quite easy talk to. Have you considered how lemmy might intergate with other federations? I did mention in another post someone was developing forums on matrix. Hummingbard I think its called. I have wondered if chat and forum could be combined in an interesting way, such that they could both possibly flow together but be seperated by alternate uis or view modes. On matrix often discussions can take a forum type format and style with conversations having days or many hours between replies. It would be great if those could end up in more permanent threads.

It may be worth reaching out to matrix and element and seeing if some crossover can occur or even intergration. Their $30million and german health sector selection is a lot of potential dev work to be done.

Thanks nutomic!

@nutomic@lemmy.ml
link
fedilink
5
edit-2
urte bat

I think instance blocking is pretty transparent, you can see the list of allowed and blocked instances under /instances. If admins do something you dont like, thats when you choose another instance.

Its funny that you mention how i “still get involved with users here”, because Lemmy is still really small when you compare it to Matrix or Mastodon (16k total users, less than 1k active in the last month).

Matrix uses a completely different protocol, so I dont think federation with them is realistic. And we definitely have enough work to do on Lemmy itself. But it might be possible to write a chat app using activitypub, or even as a Lemmy frontend as described in this post.

@lemm1ngs@lemmy.ml
creator
link
fedilink
2
edit-2
urte bat

I am not arguing its not transparent just its not ideal. I think matrix users are way over stated.

Thanks

@Ferk@lemmy.ml
link
fedilink
16
edit-2
urte bat

It’s definitely not stupid. P2P does have its own set problems and inefficiencies that don’t exist in federated servers.

Also, the separation in “fiefdoms” is not necesarily a trait implicit in the federation. Email is federated and I don’t think people using Gmail feel like it’s an isolated island separated from those using Hotmail.

Having to synchronize state across peers in a P2P network can be troublesome and has limitations, specially in groups with very few peers that might not be simultaneously online at the same time and/or have limited bandwidth (if you think content in federated Matrix is slow to spread, then don’t be surprised if it’s even worse in a situation like that were it be P2P).

I think you can find arguments for both methods and it just depends on what are your requirements. I think a hybrid model of federated servers and peer nodes where you can choose whether you want your community on a dedicated server or in your own peer node (that’s what I hope Matrix is doing) would be more flexible and preferable than just going full p2p or full federated. But neither of them are “stupid”.

@humanetech@lemmy.ml
link
fedilink
4
edit-2
urte bat

P2P does have its own set problems and inefficiencies that don’t exist in federated servers. […] I think a hybrid model of federated servers and peer nodes […]

Indeed, I too think that eventually we’ll move to a model of hybrid decentralization, where both federation between servers/apps and P2P devices are intermixed. Both types of decentralization have their pros and cons and this allows a “best of both worlds” scenario.

I think a hybrid model of federated servers and peer nodes

@lemm1ngs@lemmy.ml
creator
link
fedilink
2urte bat

Yes email is an interesting point, but aren’t many mail servers blocked for spam? or many automatically filtered into trash for spam? Mind you so many run their own domains for companies it cant be possible that only a few domains are whitelisted? I am not sure how gmail and others go about blocking for spam but it would have to have a reporting theshold type situation.

I think as federation expands feifdom should be less of an issue but then look at the split in mastodon with gab.

The other thing to think about email is it is user to user messaging, private with laws protecting it. I am not concerned with being blocked or censored in the modern messaging platforms for this because they use e2ee and cannot discern any of the communications. You are still at the mercy of the network you are on and hence p2p helps with that, depending on hardware how much though. Wouldn’t it be great if we could use the cell hardware in phones to mesh? Thats nuclear world ended or revolution type tech.

I think matrix p2p will have to take a multi type node approach, with them beginning the existing home servers will just act as peers but imagine more will have to be done. Yes propogation will be slow but the tech is quite new so will have to see where it can go. I imagine nodes can adapt or be set to provide more based on resources available much like torrents can. Like a hydrid approach but more dynamic.

@Ferk@lemmy.ml
link
fedilink
5
edit-2
urte bat

Yes email is an interesting point, but aren’t many mail servers blocked for spam?

Aren’t there blocklists in many p2p networks? I know in bittorrent there are. I’m ok with blacklisting (which I expect even gmail does, like you are hinting), as long as it’s non-intrusive enough to not be detrimental.

My point is that it’s not federation what’s the cause of the “fiefdom” syndrome, the behavior of the p2p-swarms/federated-group is. In theory you could have the same problem in p2p network if a majority of peer nodes applied whitelisting. Each whitelist (and whitelist sharing could be a thing, much like blacklists in bittorrent are, so each community could all share the same source for its whitelist) would be its own “fiefdom”. This would kind of defeat the purpose of the openness of p2p in the same way as whitelisting in federation kind of defeats the purpose of an open federation. What causes the “fiefdom” isn’t federation itself, but the protective philosophy.

On the other hand, I can also understand that protectiveness is needed when we deal with hosting content that’s not private anymore but it’s open to the public. When hosting publicly you become responsible of the content you are publishing, even when someone else wrote it. If, for example, a country wants to ban a community that shares illegal content, then they might take action against whoever is hosting that content, whether the content is hosted in a federated dedicated server or in a personal p2p node, that’s no different. They can prosecute you either way… same way as many countries prosecute p2p bittorrent sharing for copyrighted works. So ultimately you do need some form of moderation so that you don’t end up hosting content you don’t want to be involved with as “partner in crime”.

I imagine nodes can adapt or be set to provide more based on resources available much like torrents can. Like a hydrid approach but more dynamic.

Yes, that’s what I was saying. I’d prefer a hybrid model where you actually have both dedicated servers and user nodes. Torrents have problems when there’s not enough peers, there’s a lot of dead torrents out there showing this.

@lemm1ngs@lemmy.ml
creator
link
fedilink
2urte bat

Aren’t there blocklists in many p2p networks? I know in bittorrent there are.

Block lists with torrents were used to try prevent legal implication and a few other reasons all which are largely useless because peers on blocklists can just move to nonblocked ips, especially peers with resources looking to gather evidence.

My point is that it’s not federation what’s the cause of the “fiefdom” syndrome

I disagree but it is a point worth exploring. Thinking what would be the cause likely is that the federated instances exert control over the content rather than just storing and relaying it to the users to deal with.

In theory you could have the same problem in p2p network if a majority of peer nodes applied whitelisting.

Yes you could but it still depends how the content is distributed, peers on the white list could act as relays to those not on the white list. This would risk them being removed but when dealing with so many peers I just dont see lists like that working to segment the network too much. They may as well fork. The desire to remain connected to the larger network will be too much for most users. You could also have underlying blockchains or hash tables that make forking the network not very promising.

When hosting publicly you become responsible of the content

Section 230 and the dmca should still apply, enforcing becomes much harder with p2p but so does defending I think the legal system does make having free speech an interesting problem inspite that the constitution says it should be possible. I think having speech government and companies and many others don’t want is part of the plan for these networks. There is a great many authorities not happy at the freedoms the internet has allowed.

Torrents have problems when there’s not enough peers, there’s a lot of dead torrents out there showing this.

Yes but I think keeping the text part of these platforms alive should be much easier. Torrent only needs 1 peer(seed) with a full copy, a social network can easily have 50000 users which is a lot of resistance and redundancy.

@Ferk@lemmy.ml
link
fedilink
3
edit-2
urte bat

Block lists with torrents were used to try prevent legal implication and a few other reasons all which are largely useless because peers on blocklists can just move to nonblocked ips, especially peers with resources looking to gather evidence.

Same can be applied to federated blocklists. You can just move a server to a nonblocked IP. The only way to truely block content is to use whitelists instead of blocklists.

Yes you could but it still depends how the content is distributed, peers on the white list could act as relays to those not on the white list.

Same could be applied to federated servers then. Servers on the whitelist could act as relays to those not on the whitelist.

Section 230 and the dmca should still apply, enforcing becomes much harder with p2p but so does defending I think the legal system does make having free speech an interesting problem inspite that the constitution says it should be possible.

This all depends on the country. I know first hand of cases where letters have been sent to particulars in P2P networks and have been called to court.

a social network can easily have 50000 users which is a lot of resistance and redundancy

This is why I’m saying it depends on the case. Those big communities maybe don’t need a dedicated server, but that might not always be the case. I might want to make a private community for my family or a small circle of friends. Much like how I might want to have a Matrix room with a few people that might only come online one at a time.

@lemm1ngs@lemmy.ml
creator
link
fedilink
3urte bat

Good points you make, whitelisting is powerful that way making closed communities. I wonder if lemmy will ever have encrypted communities?

Funny I just watched you make 2 edits while I was reading which impressed me with lemmy’s update speed. Its making matrix look slow.

Yes use case is important I think adding features and choice and letting users work it out is a good path. Something good would be serverless communities, matrix needs that for some rooms especially with p2p.

poVoq
link
fedilink
9urte bat

The slow-ness is definitely a Matrix problem only, other federated systems are in fact often faster then centralized systems as they can distribute the network load more evenly. Try XMPP and see how fast it is :)

@lemm1ngs@lemmy.ml
creator
link
fedilink
2urte bat

I will try xmpp. Matrix is horrible, pics and vids take forever, chat can seem to lag for 10minutes at times! You would think it could be fast, like just distribute the content but its not and I think the servers are overloaded hence p2p is needed

Helix
link
fedilink
1urte bat

Which instances did you try? In another comment you mentioned Matrix.org as home server, which might be part of that problem.

@lemm1ngs@lemmy.ml
creator
link
fedilink
2urte bat

several and performance varies room to room. Can you recommend a fast server?

Helix
link
fedilink
2
edit-2
urte bat

If you already tried several and had varying results in different rooms, can’t really recommend any, although I have made a wiki page with a super small list: https://wiki.tilde.fun/guide/messenger/matrix

It’s good if they’re close to you geographically. There’s a ping bot which is mentioned in Matrix blog’s TWIM segments, maybe one of those?

https://matrix.org/blog/category/this-week-in-matrix#dept-of-ping-

Dessalines
link
fedilink
8urte bat

Matrix is overall a spec, not just the main homeserver implementation, synapse. So things like P2P matrix, and lighter homeservers that could work locally are in development. Then you could control your blocklists, as opposed to relying on a server to do that for you.

IMO the reason matrix specifically is so reliant on a few servers is because:

  • The deployment / installation, even with ansible, is fairly difficult.
  • Synapse is a system hog that pretty much requires a dedicated server.

These aren’t problems with federation, but the implementation of it. Federation overall is the only thing that has the potential to break the silicon valley fiefdom ( which only doesn’t feel as isolated, because there are so many users there ).

@lemm1ngs@lemmy.ml
creator
link
fedilink
1urte bat

Yes matrix’s new slim dendrite server is being worked on with the intention for it to be used in p2p. I get there is many possible implementations of federation and I am totally down to take on ‘big tech’ it’s just to do that I think you not only need to match them but bring something better and I am not entirely seeing that yet. In fact I am even seeing subpar things like discoverablity, fragmentation, performance, complications like to all the rules and instances.

@nutomic@lemmy.ml
link
fedilink
4urte bat

In fact I am even seeing subpar things like discoverablity, fragmentation, performance, complications like to all the rules and instances.

All of these problems would definitely would be worse in a p2p network. In a federated network they are easier to fix.

@lemm1ngs@lemmy.ml
creator
link
fedilink
2urte bat

Which follows the rule that centralization is easier than decentralization, because p2p is more decentralized.

@iortega
link
fedilink
8urte bat

Sorry, not related to the topic but… nice application of Cunningham’s law btw. https://xkcd.com/386/

@lemm1ngs@lemmy.ml
creator
link
fedilink
4urte bat

lol I didn’t know its called that but I have seen the meme. Much of human existance seems to be about people trying to prove each other right or wrong.

@ramberry@lemmy.ml
link
fedilink
6urte bat

Every system has its advantages and disadvantages. It is the same whether it is centralized, federated, or P2P.

@lemm1ngs@lemmy.ml
creator
link
fedilink
2
edit-2
urte bat

They do and difficulty to implement is one of them and because of that neither federation or p2p has been developed the best yet.

I am looking forward to the day everyone can just run an app with no specific servers and the platform works, and content is quickly and optimally distributed

@Liwott@lemmy.ml
link
fedilink
2urte bat

P2P is probably better for direct communication, but I hardly see how a P2P publishing platform (forum, microblogging, …) would work. As far as I understand, this would involve a permanently running home server storing at least your full history, right?

Add in you are at the mercy of your home server, you can lose your account have it immitated, and more.

Indeed, the main criterion to choose an instance (server) should be that you trust the people who run it. If no existing instance fit that criterion (or any other of your criteria, for that matter), you are free to create one.

Great yes you may find one that suites you better, but users now can end up isolated to their island

… which is also a criterion to look for an instance (server). Some look for a broadly federated network, others for a “safe space” kind of experience. Servers exist for both use-cases.

but now you are isolated for the previous island and maybe other

which makes sense when one considers moderation. If you are running a “safe space” instance, you don’t probably don’t want your users to be exposed to less moderated content, and you certainly cannot moderate one by one all the sensible content from across the federation. So it makes perfect sense to federate only with instances who have a reasonable code of conduct.

You either have to run multiple accounts or accept the limits.

Note that there’s another solution allowed by the following property: an instance can be federated with two instances who are not federated with each other. Concretely, this means that you can create an instance who both has a CoC for its own content strict enough to federate with safe space ones, and federates with instances who have a less strict CoC to access their content.

@lemm1ngs@lemmy.ml
creator
link
fedilink
2urte bat

Thanks for your well written reply

The Matrix p2p project is not even alpha. You should join the p2p room @matrix.org if you have some curiousity. Problems like storing distributing the data are not fully solved. I think you will have a mix of devices including heavier servers. They are trying to integrate each device as another home server but thats not ideal I think.

I do think p2p can be done and for forum type platforms. These are just not solved problems because as is said among dencentralizers centralization is easy! federation seems a natural stepping stone to p2p, after all instances or servers are really peers or nodes themselves it’s just when you push out to lowerpower devices and so many of them things become a bit different. I surpose that is why the Matrix’s p2p dev Neil is working on the server now.

I think p2p will need content to be distributed among nodes. I am looking forward to ipfs intergration on matrix as the media performance is horrible.

Note that there’s another solution allowed by the following property: an instance can be federated with two instances who are not federated with each other. Concretely, this means that you can create an instance who both has a CoC for its own content strict enough to federate with safe space ones, and federates with instances who have a less strict CoC to access their content.

You have lost me a bit on this. So are you saying one of the duplicate instances acts like a filter to interact with the other safe spaces instances?

If that is the case this is the beginnings of what can just naturally exist on discussions.app

@Liwott@lemmy.ml
link
fedilink
1urte bat

Ok my first sentence was very naive and due to my ignorance on p2p data storage. I do understand from your answer that it’s nontrivial.

About those instances things, say there are 3 instances. One instance A that is huge, where a lot of people that you know are, but is very laxist on its CoC. One instance B who aims at being a safe space for its users, and hence is not federated with instance A. Then you have instance C, who has the same CoC as instance B, so it can federate with it. Instance C can also federate with instance A. Hence my statement : one instance C can federate with two instances A abd B who don’t federate with each other.

Note that instance C is not a duplicate of anything, it is just an instance whose users are open enough to the sensible content of instance A and polite enough to not publish anything that would be offensive for the instance B users. Note that I don’t know about the details on how comments/mentions between instances A and C are perceived by instance B.

Can you say more about how content moderation and codes of conduct work on a p2p network?

@lemm1ngs@lemmy.ml
creator
link
fedilink
1urte bat

Note that I don’t know about the details on how comments/mentions between instances A and C are perceived by instance B.

So I am wondering that too. How does content interacted with on A by C affect B. I know how B would want that which is not to see it. To me all these server to server rules are not ideal and should instead be the users themselves organizing on the platform setting the rules. I know you have that with each community but I am talking also platform wide. The instance does that with its blocks but thats very authoritaian and lacks nuance.

Can you say more about how content moderation and codes of conduct work on a p2p network?

I know how I would do it and how matrix is planning to do it. Matrix is planning to keep it the same as rooms currently do it which is the same as communities here. Server based blocking becomes quite pointless in p2p I think which leaves me wondering how matrix will handle spam as their current main method is to block servers. In p2p you can potentially have new servers continually appear and attack you so…

I would use a moderation approach as like discussions.app is trying but that also really needs to also use how they organize content. The advantage is the approach is grassroots and nuanced with everyone getting the most unique moderation you could expect outside say some wonder ai doing it personally for everyone.

@Liwott@lemmy.ml
link
fedilink
2urte bat

I know you have that with each community but I am talking also platform wide.

Maybe to simplify the discussion let’s talk about a platform who is not subdivised in communities, like mastodon or facebook. Communities are already some kind of federation.

should instead be the users themselves organizing on the platform setting the rules.

Ok but nobody has the power to enforce the rules right? How do you deal with trolling and spamming? Does every user have to block every troll one by one?

I would use a moderation approach as like discussions.app is trying

which is?

@lemm1ngs@lemmy.ml
creator
link
fedilink
2urte bat

Communities are already some kind of federation.

This is an excellent interpretation. On federated platforms there is federations inside federations. Its superfluous really, but it gets worse where communities get repeated.

Ok but nobody has the power to enforce the rules right? How do you deal with trolling and spamming? Does every user have to block every troll one by one?

Well it could depend on what you mean by enforce. There is moderators and they can enforce rules, it’s just each user is put kind of in an admin position to pick and choose the moderators. You can also have groups of moderators controlled by other users for any user to use, which is some part of how discussions.app is doing their ‘communities’ the other part is each community chooses what #tagged content to use. Aswell the instance could enforce certain moderators and infact some moderators must be set as default to keep the platform clean. The idea is these could be changed individually or with lists of moderators, or users just live inside the curated communities. The other thing is different instances could do it differently with a different set of default moderators.

The whole point of this type of platform/moderation is to solve problems seen on others. You won’t be able to own a topic or community ‘as such’ as users must consent for you to have power. The reality is people are lazy, stupid and will consent to crazy thing as seen from the last year. So because moderators provide a service stopping spam and abusive behavior then people will use them and they will have power. What this really prevents is moderators being bad actors and also people not having good moderation or situations with no moderation when its needed. Because anyone can moderate there should be a much higher supply of moderation and types of moderation. The types of moderation I think is where things can get interesting because there is a heap of behaviours that could be hidden and platforms would be much nicer places, but really it’s up to the users what they want and how they experience things.

@Liwott@lemmy.ml
link
fedilink
2urte bat

There is moderators and they can enforce rules, it’s just each user is put kind of in an admin position to pick and choose the moderators.

Wait, if there are globally set modarators, how is this not a centralised network ? I mean ok it uses p2p technology so the data is not physically centralised on a single server. But the network itself, the graph of interactions, it is a single blob where every node is connected to every other. Or do I miss something?

@lemm1ngs@lemmy.ml
creator
link
fedilink
1urte bat

Moderators are globally set just on that one instance (or really it’s an interface or frontend), but also changeable by the users but also depending how the instance is setup. The way they are doing the data it is all shared in blockchains so in that sense it is a blob, but depending on each user and how they have that content curated would change the interactions user to user. In theory you will have groups oblivious to other groups but users within them that cross over between and become social bridges. The network is the people. My idea is that these human bridges will eventually lower barriers between users blocking each other and change minds. The end result is a more connected less divided social platform and so too society. Following the axiom that communication solves all problems. By putting the barriers to communication into the users hands instead of third parties he will have control to remove them.

@Liwott@lemmy.ml
link
fedilink
1urte bat

Ok I’m not sure whether I understand how to mods are set.

  • if there are global mods who have the power to include to or exclude from the plaform, this is a centralised platform
  • if each user chooses one or more mods from which they automatically derive white and/or black list, this is a federated platform
  • if each user can only accept or block people for themselves, this is a decentralized platform (but you told me there are mods, so it cannot be that one)

Do you agree with the above classification? If yes, which one is it?

Maybe my question is equivalent to the following : what is the power of the mods?

@lemm1ngs@lemmy.ml
creator
link
fedilink
1
edit-2
urte bat

Its a difficult concept to get, one because it has yet to really exist in any meaningful way, like with a platform with say 50k or more users and because of the terminology used. Moderation is a bad describer of it except it has much the same use and effect but with differences. It would be better described as ‘filters’. Filters would also be a good describer for what are block and white lists.

I dont particularly care on classifications, its just like different languages to me. To use your list its all 3, the instance can implement a central control but uses can switch instance and have the same content, or the instance may allow their control to be altered, like disabled or changed. Users can use lists made by others, to which they may as well help in making and users may also have their own lists. The concept should expand to include multiple lists block and white working against each other in priorities, and the lists work against not just users but any individual piece of content and it could and should I think be expanded to include editorial changes, annotations. Things like rather than hiding content pointing out problems with it, grassroots factchecking etc. To me its an incredibly adaptive and dynamic concept, which must be hard to implement or surely someone whould have tried long ago.

what is the power of the mods?

Currently on discussions.app content and users can only be hidden, the instance or interface has some moderators as fixed defaults for doing this but previously and the same I am told will occur soon is logged in users may unselect any of these moderators or add their own, and currently you can do your own moderation. Moderators can also be in control of a community and so using that community will use that moderation. The idea is all moderation is done on a consensual basis with each user, the platform then becomes individualized for each user. Rather than looking for instances you will just look for the communities and more so in the future the moderators. The simplest way would be you grow a follow list similar to your moderator list, but hopefully those lists become tradable at some point.

TLDR

Sorry for the long text. In short user controlled and collaborated and sharable filter lists is what I am talking about.

@Liwott@lemmy.ml
link
fedilink
1urte bat

Thanks for your detailed response! There are essentially three approaches that I’ve been taking to try to understand your model. Before that, a quick remark

I dont particularly care on classifications

Given the title of your post, I was assuming that there are platforms that you classify as federated and that you think it is a poor design choice. But I don’t really understand what you mean by that given that your rant includes quite a broad range of topics.

Storage

That I think I understand correctly that it works as a p2p network where everyone seeds a bit of everything. Do users control what part of the network they seed? If yes, then the issue that you might lose your content if someone else (in this case, everyone else) suddenly doesn’t want to share it anymore still exists.

If not, then isn’t any user an accomplice of the diffusion of whatever illegal content circulates? I don’t want to participate is sharing pedopornographic content !

Distribution

Is the app in your model based on an open protocol, that anyone can use to start their own network? Then what happens when people on two such networks try to interact with each other?

It has to be, otherwise it is clearly a centralised network that can be single-handedly shut down by its maintainer.

Network

Logically, the concept of shared blacklist seems to me to be equivalent to federation. If you publicly subscribe to a mod’s blacklist, it’s like if your were joining their instance on the fediverse. If you don’t, it’s like you were creating your own instance, but then you have to implement a blacklist yourself.

I understand the biggest difference is that it’s easier to “start your instance”, but that again implies everyone agrees to seed your content. I would not seed anyone’s content if there is no code of conduct they have to obey. And that seems to logically yield users only seeding content approved by their chosen mods, which brings us back to a federated storage, except that each instance’s data is stored in p2p rather than in a centralized server. But the instance mod still has the same power as in the fediverse case.

@lemm1ngs@lemmy.ml
creator
link
fedilink
1urte bat

So on that classifications comment it’s me not caring about calling a concept something vs discussing what something is already understood as a concept. There is a concept of what federation is, and that is represented in existing federated platforms like lemmy, matrix and so on. In that concept I see stupid things but it’s not all the same nor all of the concept stupid.

So storage on discussions.app is currently using open blockchains. So its the blockchain that is responsible for what is there, while they are only using that for text, blockchains have had childporn put on them. It is next to impossible to remove data from a blockchain. So that is an issue. I think the data would be better stored in something like ipfs. This type of platform relies on the backend for its distributedness, like with a blockchain. Anyone who can access the backend can be part of the platform.

Yes the blacklists would result in a federation of sorts. I think the idea you store and distribute mainly content you use is a good one. The data has to be somewhat unfiltered for the model to work and in that part you will potentially be distributing content you may not want to. Though the situation would be some what a kin to putting encrypted content say here that people wouldn’t like except for the fact they cant know that.

r3d_f0x
link
fedilink
1urte bat

Federation is critical to the development of alternative social networks. The reason people use specific social networks is because other people are on them. If there’s an open source social network app that isn’t federated, then everyone using sites powered by that app is isolated. With federation, all instances of the social network can interact with each other. Different instances can pop in and out of existence and the ones that stick around can become popular.

It’s better for new social networks to be federated then isolated.

@RickFowler@lemmy.ml
link
fedilink
1urte bat

Amazing

@TheAnonymouseJoker@lemmy.ml
link
fedilink
0
edit-2
urte bat

This post blew up massively from 10 comments for a topic like federation concept.

Edit: sorry for off topic comment, ignore

@lemm1ngs@lemmy.ml
creator
link
fedilink
1urte bat

its gone into the ‘fediverse’

@stackexterior@lemmy.ml
link
fedilink
-1
edit-2
urte bat

Y’all know the problem with the current shill, for-profit, centralized spy internet.

Why was the internet in the past good, you ask? Because it was free. It had the good, bad and ugly, but it was free. Fediverse had everything to create a good Internet 2.0, but it failed. Rather than relying on users’ freedom to choose which instances they want to join, they listened to those who believe in censorship and limited freedom of speech.

Now that the culture wars of those who believe in censorship have won and more people are using matrix.org will have the filtered experience, the isolated islands you’re talking about. Tearing apart the unique reason for federation. It may take several decades for a more mature platform to emerge without the same problems.

At least it’s better than privacy alternatives, but it doesn’t scale in a free and ethical way.

I bet my chips on the Gemini protocol, to be honest. Federation is not stupid. It was killed.

Edit: Gemini

@gwynne0190@lemmy.ml
mod
link
fedilink
20
edit-2
urte bat

deleted by creator

@Ferk@lemmy.ml
link
fedilink
7
edit-2
urte bat

But the point of Instances and federation is not about engagement and discoverability. It’s about making intimate communities, unique to their own. Like clubs. The objective is to make connections/friendship with people, focusing on your own interests and objectves

Isn’t that already possible without federation? I don’t understand the purpose of having the servers federate if having intimate communities were really the point.

You can even use something like OpenId to have consistent user authentication across different servers without the need of each server having to federate among themselves. They’ll still be intimate communities that anyone can host and each user would still only need one OpenId account to access them all.

To me the point of decentralization is the openness of the protocol that allows me to access content as I choose. Ideally, I should be able to host my own instance without creating any community or inviting anyone else, yet still be able to federate with other instances to consume the content through my own interface and cache it (so that, for example, I can access to it from my intranet even if I go offline, or the other server goes offline). Ultimatelly, if enough people did that then it starts to become closer to a P2P network. I think it wouldn’t be a bad idea to go for a hybrid model were you can have peer nodes and dedicated servers at the same time, which is what I believe Matrix is going for.

@nutomic@lemmy.ml
link
fedilink
3urte bat

To me the point of decentralization is the openness of the protocol that allows me to access content as I choose. Ideally, I should be able to host my own instance without creating any community or inviting anyone else, yet still be able to federate with other instances to consume the content through my own interface and cache it (so that, for example, I can access to it from my intranet even if I go offline, or the other server goes offline). Ultimatelly, if enough people did that then it starts to become closer to a P2P network. I think it wouldn’t be a bad idea to go for a hybrid model were you can have peer nodes and dedicated servers at the same time, which is what I believe Matrix is going for.

The server needs to be online to receive activities from remote instances, so it should stay online (they will retry sending a few times). The solution is to cache things on the client when it is online. That would actually be pretty simple to implement, because each post, user etc has a specific id. Then you also need to cache anything that your client sends, and transfer it to the server once its available.

Honestly this solution is better than p2p, as long as your are using the internet and not something like bluetooth.

@lemm1ngs@lemmy.ml
creator
link
fedilink
1urte bat

good idea nutomic!

@Ferk@lemmy.ml
link
fedilink
1
edit-2
urte bat

Sure, but then you need a heavier client. And at that point, why do you even need federation between servers? Just have the client do the work, connect the client to multiple servers instead of having the traffic go server-to-server in federation.

Imho, this defeats the point of federating.

Another advantage of hosting your own instance (even without hosting any community) is that then you are the one in control of your identity (same reason why someone might want to host their own email servers). Ideally I should be able to participate in a third party instance without being worried of my entire identity disappearing if that instance disappears, or if the owner of the instance doesn’t like me and wants me removed from his server. I’d much rather just be banned from communication with that instance rather than lose my entire identity in the whole federated network.

Even the OpenId example I gave that is not using federation is more flexible in this regard. There you really can own your identity and participate in multiple communities without being “owned” by them.

If that flexibility is taken away, then it’s not very different from not having a federation at all. In Mastodon at least the federation makes sense for threads of toots that are truly cross-server (as in, none of the servers actually owns the entire conversation, or has admin privileges over the other). But in the case of a reddit-like post where communities are owned by a particular instance, I expect the server hosting the OP has authority over what comments are done in that post, or what posts are done in that community. So in the end the control of the conversation is centralized, even if the messages come from other servers. At that point they might as well come directly from the clients.

@nutomic@lemmy.ml
link
fedilink
2urte bat

You really underestimate how hard it would be to write something like Lemmy as true p2p. You can already connect to multiple servers from Lemmur. And of course you can host your own instance for use with any client, if you are worried about an instance disappearing.

In Lemmy federation actually makes a lot of difference, for example your instance may not show posts or comments in a remote community if the author’s instance is blocked. Votes are also not counted from blocked instances.

@Ferk@lemmy.ml
link
fedilink
2
edit-2
urte bat

You can already connect to multiple servers from Lemmur.

But that’s using separate identities, right?

I wasn’t comparing it to p2p. And I agree p2p is hard. What I was talking about is using something similar to OpenID to abstract the authentication and share an identity across servers. Then each server can have whatever forms of moderation they prefer. The servers would use standardized APIs for the client and identity server, so users can use any compatible client and any compatible identity provider (OpenID style).

@nutomic@lemmy.ml
link
fedilink
3urte bat

Sorry, I still had another comment by @lemm1ings in mind and didnt notice that you’re a different user.

The main point of federation is that you dont need multiple accounts on different instances. Instead you can communicate with people on different instances from a single account. I am not familiar with openid, but if someone else wants to implement that in lemmy, we would probably accept it.

@gwynne0190@lemmy.ml
mod
link
fedilink
4
edit-2
urte bat

deleted by creator

@Ferk@lemmy.ml
link
fedilink
3
edit-2
urte bat

having an openId account, you’d have to open a bunch of different websites to access their communities

Not necessarily.

It’s also possible to set up ways to access communities from one place without needing federation. Nowadays you can build webapps that communicate with different servers. In theory you don’t need server-to-server communication (which is what makes it federated), you can have one client communicate with multiple servers.

An example of this is how in the webapp from Matrix (https://riot.im/app/#/login) you can change the account (or even create an account) for any matrix server (it doesn’t have to be matrix.org) without needing to have different websites for different instances.

In fact, that model (separating the frontend website from the server) is more flexible in terms of UI than current state in lemmy. I cannot choose to use https://lemmy.ml/login if my account is not @lemmy.ml …I’m forced to use the website of the instance I have an account with, and if I have multiple accounts in different servers I do have to use different websites. Whereas in riot.im/app the website is not even hosting a matrix server and you can use any account you want.

@gwynne0190@lemmy.ml
mod
link
fedilink
2
edit-2
urte bat

deleted by creator

@Ferk@lemmy.ml
link
fedilink
2
edit-2
urte bat

If it uses OpenID accounts for the authentication then nobody really exclusively “belongs” to A or B.

You can send messages to both server B and server A. Both servers will identify you based on your OpenId identity and it would allow you to post in both servers, without the servers needing to speak between themselves.

It’s like sending emails to a server and have the server publicly display the messages. You don’t need to be registered in that server, the server just needs to receive your email and if they don’t have your address in a blocklist, show it in the appropriate manner.

You still can post in both places and people can still connect to those places and see your messages. It’s basically sharing the same account and the same interface across communities hosted in different servers.

Yes, it’s an alternative to do the same thing. This is why I’m saying you don’t need federation for that goal.

@gwynne0190@lemmy.ml
mod
link
fedilink
1
edit-2
urte bat

deleted by creator

@Ferk@lemmy.ml
link
fedilink
2urte bat

You’ll have alot of wasted info data that cannot be pruned, comparing it to fediverse where federated data can be deleted later. you’d have two copies that can’t be deleted.

I don’t understand. Why would you have two copies? In my example there’s no federation. If I send a message to server B it’ll only be in server B. You don’t have to duplicate the data. I expect this would produce actually less duplication than if it was federated, since you don’t need server-to-server caching.

No it’s not, I’m saying that you’d have to implement complicated solutions to a problem that federation solves it more simply.

It’s actually simpler. Federation requires server-to-server communication.

That really sounds like centralization. You don’t get to communicate with other servers then people would rather be in one place where everyone is there

You can communicate with both server A and server B, without having to go through the process of creating an account in server A and server B.

This is the same way as how you can post in https://<server-A>/c/fediverse and in https://<server-B>/c/fediverse with an account from <server-C>. The only difference is that in this case <server-C> would be an OpenID provider, specialized only in authentication, and not really a content provider.

You could apply the same argument of why would people want to use https://<server-B>/c/fediverse if everyone is using https://<server-A>/c/fediverse

@lemm1ngs@lemmy.ml
creator
link
fedilink
1urte bat

I like what you are saying with openid but without caching or duplication the network scales poorly and content can go missing.

@Ferk@lemmy.ml
link
fedilink
1
edit-2
urte bat

Each server can cache its own requests rather than every server having to also cache requests meant for other servers. Basically it shouldn’t be any different from how normal internet browsing scales, since it’s just that (you basically browse different sites through a consistent API interface) but with some extra standards being enforced so the identity can be shared.

Content can go missing, yes. Same as how content can go missing in the regular web. That’s a consequence of requiring less duplication. Whether that’s a problem or not might depend on each usecase. Some might actually prefer that deleted content has less of a chance to stay around or have less latency when propagating changes.

The proposal was based on the premise that “the point” is to have “intimate communities”, “like clubs”, “allowing people to have their own rules and customization”. My point was that these aren’t necessarily things that are justifying federation. I’m actually trying to get to the bottom of what is it that actually makes federation better vs doing the same thing stablishing some standards, without federating between the servers that host the content.

I think for a service like messaging or email where communication is less public the benefits of federation are much clearer. But for reddit-like websites I’m not so sure if the advantage is that big.

If the purpose of going federated is to distribute the data to have redundancy then you also have protocols like I2P and DAT that a website can be built on top of and be fully distributed. But again, P2P is hard and you won’t find the same level of reliability than with a trusty http server… so if you do go that direction of wanting redundancy then I guess I can see federation as a good compromise. But for the other features, you can probably do better and get more flexibility with a modular architecture where each aspect is a separate independent and swappable module (authentication, client UI, even the search engine to discover communities could be a third party service without the need for community hosting servers to overcomplicate themselves with server-to-server communication), allowing people to host their own modules as they wish while still consuming/publishing the same content in servers that could be more lightweight than federated nodes.

@gwynne0190@lemmy.ml
mod
link
fedilink
1
edit-2
urte bat

deleted by creator

@Ferk@lemmy.ml
link
fedilink
2
edit-2
urte bat

Exactly. Two accounts that do not duplicate information and that both are linked to a single identity that you control (and that you can even self-host without depending in A or B).

@gwynne0190@lemmy.ml
mod
link
fedilink
1
edit-2
urte bat

deleted by creator

@Ferk@lemmy.ml
link
fedilink
2
edit-2
urte bat

Whenever you see a video hosted in a server, you just post a comment to that video in that server. The authentication would just happen transparently. Your comment is still linked to your identity that would be server-independent.

What is the advantage of doing it federated in this case? You still need authority to moderate the comments in the video. I expect Lemmy communities would not allow comments from servers that have been blacklisted or that have been removed, so ultimately the control of what content is in the community is centralized, only the access to the content and to posting is federated, so for the user there’s not much difference if the communication is server-to-server or client-to-servers.

@gwynne0190@lemmy.ml
mod
link
fedilink
1
edit-2
urte bat

deleted by creator

@lemm1ngs@lemmy.ml
creator
link
fedilink
2urte bat

Everyone who disagrees with the rules can talk to the admins, they’re humans. if you don’t agree with it, leave and find an instance that fits you. you’d still be able to access content all around fediverse.

Are you saying content censored in one instance still persists on others here?

I think the admin model can be done much better.

@gwynne0190@lemmy.ml
mod
link
fedilink
1urte bat

If you meant one instance rules affects other instances by that, then no, that’s not how it works.

@lemm1ngs@lemmy.ml
creator
link
fedilink
1urte bat

So if an admin deletes a post that originated on their instance that post will still exist on other instances? what about in communities?

@gwynne0190@lemmy.ml
mod
link
fedilink
1
edit-2
urte bat

deleted by creator

@Ferk@lemmy.ml
link
fedilink
2
edit-2
urte bat

Everyone who disagrees with the rules can talk to the admins, they’re humans. if you don’t agree with it, leave and find an instance that fits you.

I didn’t say I disagree with any rules. What I’m saying is that since the moderation authority is centralized for each community then the content stored in each community can be handled in a centralized way.

this you’d have the control to remove people in servers that are toxic, if you do this with openID you’d have to individually ban users.

The equivalent to this would be banning OpenID servers.

Though you do not have any guarantees that the accounts for all the toxic people are in the same server (same as you don’t have a guarantee that the toxic people use the same OpenID servers). Ultimately, banning individual users is inevitable.

You still need federation to social media servers or else it’ll be just walled gardens, centralized like we have before. your way wouldn’t work because the disconnected nature.

It’s not a walled guarden if anyone can make its own community and people can access to it using any (non-blocked) OpenId server with any client. The same way as https://lemmy.ml/c/fediverse is not a walled just because it’s hosted in lemmy.ml, anyone can also make their own community and people still can access it from any (non-blocked) third party instance with any client.

@gwynne0190@lemmy.ml
mod
link
fedilink
2
edit-2
urte bat

deleted by creator

@Ferk@lemmy.ml
link
fedilink
2
edit-2
urte bat

Sure, sorry if I came across as being confrontational. I just enjoy discussing these topics.

@gwynne0190@lemmy.ml
mod
link
fedilink
2
edit-2
urte bat

deleted by creator

@lemm1ngs@lemmy.ml
creator
link
fedilink
7urte bat

Thanks for your excellent response. I find it a bit contradictory you assert federations is not to get stuck in echo chambers but also to make little groups. Not that I am against either. For me federation is more about censorship resistance. To that end I think of regimes that shut down the internet or block things like whatsapp or even signal when the ‘citizenry’ become an organized problem. Which is why things like the matrix p2p effort is important to me. Devices that can self organize into a continually changing platform is very powerful. I also see in federation control of data but that is less important for me than censorship resistance.

There must be many ways this can all be done, discoverability shouldn’t be a problem.

I know some are trying to build forums on matrix. I wonder if the lemmy devs have considered intergrating with matrix. Matrix seems to be on an exponential curve now with their 30million investment and the german health system selecting them

@gwynne0190@lemmy.ml
mod
link
fedilink
5
edit-2
urte bat

deleted by creator

What do you think about XMPP? Tell me if I am wrong, but most leftist (I am socialist) people often seem to favour Matrix over XMPP, which confuses me.

I use both XMPP and Matrix, Mastodon usage is low because I shunned my previous identity and have none currently, Lemmy is something I use a lot.

@gwynne0190@lemmy.ml
mod
link
fedilink
4
edit-2
urte bat

deleted by creator

lel you knew where I was going with it

Privacy actually is something the closeted conservatives are gung-ho about compared to other people, and the whole phenomenon of decentralised socialist internet being pursued by right wingers fascinates me a lot. This is not me dividing people into groups, but a general discourse I have observed over many years of using clearnet, the different IM protocols and the Tor and I2P darknets.

Matrix enjoys its popularity because of one reason, being centralised with matrix.org server, which is ironic since Matrix advertises itself as highly federated. It shows us in a way that the world is not ready for decentralisation, and it will always act as an obstacle compared to a default centralised communication medium. This is something I really want to push through as a debate among people, Moxie has been pushing hard on Signal staying centralised as well (not considering Moxie as merit worthy, but Signal being merit worthy compared to WhatsApp and the like).

@lemm1ngs@lemmy.ml
creator
link
fedilink
1urte bat

Signal’s centralization is a huge weak point proven with the servers crash a while back.

Wanting decentralized tech is more a libertarian vs authoritarian thing than left and right. I really dont want to pull politic politics into this though cause the tech politics alone is enough :-)

@TheAnonymouseJoker@lemmy.ml
link
fedilink
1
edit-2
urte bat

That is fine, I just like to present my unique POV that is not toxic. Shower thoughts, if you will.

Centralisation definitely is a weak point, considering how Pegasus works.

@lemm1ngs@lemmy.ml
creator
link
fedilink
1urte bat

Pegasus compromises devices no?

It compromises using either SMS phishing links you click on, or zero days in common apps/software. It is easier to hack someone with zero days in centralised common software, which is why a WhatsApp missed voice call could get you pwned.

@gwynne0190@lemmy.ml
mod
link
fedilink
4
edit-2
urte bat

deleted by creator

poVoq
link
fedilink
5
edit-2
urte bat

I recently tried Conduit.rs and was pleasantly surprised and would recommend it over Dendrite. Although the fundamental problem of ever increasing database storage space with the Matrix protocol remains a problem there too.

As for (some) right-wingers being self-destructive… that is easy to explain: there is no (in their eyes) trustworthy leftish political project that is not going to evolve in administrative over-reach and high mandatory expenses. This is actually a mostly correct observation, as the majority of people involved in leftist politics are intrinsically self-interested to push for such a society. But if you want be able to make your own decisions (even if they harm yourself) and not be reduced to some sort of wage-slave due to well-meaning but mandatory fees/taxes for insurances and social services, then the right wing parties seem like the better choice.

Ultimately that is of course a wrong choice as the big-business driven right-wing parties are intrinsically self-interested to push for an economically oppressive system where in theory you have more self-agency but in reality most people end up so poor that they can’t exercise this freedom.

Therefore I think most of these right-wingers would be quite ok with an Anarchist society, but it is a hard sell as it completely goes against their political instincts.

Poor people, backfire theory working against them and they will not listen even if told to self critique. Self critique ability is what made me accept socialism so deeply, I feel.

matrix.org is becoming massive, and the costs keep piling. I personally think there should be a list of servers to choose from, where Matrix officially allows and manages distribution of users to make for easy federation, lowered load per server and lowered latency and load issues for client end.

Although this is not exactly done by XMPP either, which they should IMHO, what does exist are server lists by 404 city or snopyta. Servers in that case should also be made to fulfill strict compatibility and feature support equirements.

@lemm1ngs@lemmy.ml
creator
link
fedilink
1urte bat

or Matrix could just solve p2p really well. The matrix.org situation has been mentioned by the p2p dev as motivation for p2p. The side benefit is matrix p2p solutions should work for other projects.

@gwynne0190@lemmy.ml
mod
link
fedilink
2
edit-2
urte bat

deleted by creator

Too many FOSS projects suffer from this problem of a gatekeeping design for newcomers. This also flows into UX. When you try to solve these problems, those people crawl out of the woodwork claiming “security/features > some <slur> UX change”. When UX does not improve, they would sit silently and blame it on people not finding things easy, and tell them to git gud.

Lemmy and Mastodon are growing massively, and so is Matrix, proving an easy UI and easy signup allows platforms to get accepted well by masses. XMPP is here since 2 decades, I use it daily and I am in a bunch of groups, and I see problems all over the place.

Anyway. hopefully the dendrite server can solve this problem, hosting that hog of server is costly.

Lately Synapse has been pretty light on resources, and performant, and being actively developed reference implementation has its perks. Hopefully Dendrite, Conduit, et. al. will catch up, but Matrix in general is not as lightweight as XMPP, due to former’s focus on being able to evade censorship

@lemm1ngs@lemmy.ml
creator
link
fedilink
1urte bat

What censorship evasion are you refering to with Matrix internal or external?

The room does not live on one server in particular. So, if server A is blocked, then one can still participate in the same room through a different server B.

@gwynne0190@lemmy.ml
mod
link
fedilink
1
edit-2
urte bat

deleted by creator

With user joined to ~30 rooms with ~200 users (average), and none of them is of the order of Matrix HQ, following is the ps aux output (sixth column is RSS, physical memory in use in KiBs) on a 4G RAM VPS (2 cores), which also hosts XMPP, gitea, fossil-scm, et. al. services. I used to run it all by itself on 2G RAM VPS, but consolidated ~2 months ago:

postgres 29897   0.0  3.7  191284 153736  -  Ss    2Jul21     28:15.26 postgres: synapse synapse 127.0.0.1(5828)  (postgres)
postgres 37308   0.0  3.7  191284 153264  -  Ss    2Jul21     27:54.09 postgres: synapse synapse 127.0.0.1(16807)  (postgres)
synapse  45418   0.0  9.0 1246748 375220  -  Ss    2Jul21   2264:01.80 /usr/local/bin/python3.8 -m synapse.app.homeserver --daemonize -c /usr/local/etc/matrix-synapse/homeserver.yaml
postgres 45433   0.0  3.7  191284 153096  -  Ss    2Jul21     28:21.45 postgres: synapse synapse 127.0.0.1(12404)  (postgres)
postgres 46529   0.0  3.7  191284 153644  -  Ss    2Jul21     28:06.31 postgres: synapse synapse 127.0.0.1(31560)  (postgres)
postgres 47450   0.0  3.7  191284 153972  -  Ss    2Jul21     28:16.65 postgres: synapse synapse 127.0.0.1(30342)  (postgres)
postgres 47929   0.0  3.7  191284 152948  -  Ss    2Jul21     28:20.01 postgres: synapse synapse 127.0.0.1(8337)  (postgres)
postgres 48024   0.0  3.7  196404 153296  -  Ss    2Jul21     28:22.18 postgres: synapse synapse 127.0.0.1(43996)  (postgres)
postgres 54977   0.0  3.7  191284 153656  -  Ss    2Jul21     28:16.74 postgres: synapse synapse 127.0.0.1(8192)  (postgres)
postgres 55034   0.0  3.7  191284 153468  -  Ss    2Jul21     28:20.01 postgres: synapse synapse 127.0.0.1(48984)  (postgres)
postgres 74852   0.0  3.7  191284 153328  -  Ss    2Jul21     28:10.76 postgres: synapse synapse 127.0.0.1(44007)  (postgres)

Disk Usage (media) is 1.6G, and load average is ~0.33

It can be tuned further, but didn’t spend time on it so far. Although 2 years ago, I could not run it on 2G RAM VPS. Federation traffic kept DoSing the server, once you join any room. Lately, situation has improved a lot.

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;

For devs;

  • 0 users online
  • 7 users / day
  • 11 users / week
  • 45 users / month
  • 225 users / 6 months
  • 11 subscribers
  • 359 Posts
  • 2.47K Comments
  • Modlog