The problem is that signing up on one instance locks you to that instance. If the instance goes down, so does all of your data, history, settings, etc. Sure, you can create multiple accounts, but then it's up to you to create secure, unique passwords for each and manage syncing between them. Nobody will do this for more than two instances.
Without this, people will be less willing to sign up for instances that they perceive "might not make it", and flock for the biggest ones, thus removing the benefits of federation.
This is especially bad for moderators. Currently, external communities that exist locally on defederated instances cannot be moderated by the home-instance accounts. This isn't a problem of moderation tooling, but it can be (mostly*) solved by having a single identity that can be used on any instance.
*Banning the account could create the same issue.
Communities need to federate too.
Just as instances can share their posts in one page, communities should be able to federate with other, similar communities. This would help to solve the problem of fragmentation and better unify the instances.
Obviously there are plenty of bugs and QoL features that could dramatically improve the usage of Lemmy, but these two things are critical to unification across decentralized services.
What do you think?
EDIT: There's been a lot (much more than I expected) of good discussion here, so thank you all for providing your opinions.
It was pointed out that there are github issues #1 and #2 addressing these points already, so I wanted to put that in the main post.
Just as instances can share their posts in one page, communities should be able to federate with other, similar communities. This would help to solve the problem of fragmentation and better unify the instances.
On this point specifically, I think this idea is good. Multiple communities sharing a pool of aggregates that can moderators opt into. Great, I don't know how feasible that is with ActivityPub, but I hope it can be worked out once the dust has settled.
However, "fragmentation" is neither a problem, nor do I feel exists as things currently stand. If different servers want to host communities around a similar topic, that's not a bad thing. On Reddit, you had Gaming, Games, Truegaming, etc. They're all about playing games, video or otherwise, yet if you look at them at all you'll see they cater to almost completely different audiences. I don't NOT want ultra dominate monolithic groups. I think if their existed a single "Technology" community then that would be a failure of the fediverse.
Right now is a period of extremes, so don't evaluate communities too harshly. In the long run, I want to see dozens, maybe hundreds of small communities that maybe don't get a huge amount of traffic, but are none the less, active and interesting.
Personally I don't know if Lemmy needs these to be successful. Depending on your viewpoint, Lemmy already is successful. Lemmy instances existed long before the current Reddit influx and seemed to be doing okay even if things were a bit slow.
Maybe I'm wrong about this, but it feels to me like most people coming over from Reddit are viewing federation as multiple people helping run parts of a larger single site instead of viewing each Lemmy instance as its own entire community and site with the great benefit of federation allowing direct access and communication to other sites running in the fediverse. Identities and communities are specific to an instance because that instance is an independent community. In that frame of mind, having a different account on different instances and overlapping community topics between instances makes sense. Same way multiple forums have boards about the same topic and joining multiple forums meant multiple accounts. Federation just makes it easier to see across that gap.
I think these are "nice to have" features rather than absolutely essential, but:
For 1. I could deal with just being able to download my list of subscriptions and upload it to another server. That's the only bit that's really slow to copy over by hand.
For 2. I think the main thing that really would benefit is the ability to search all active communities on all servers. The way it is now is alright if there are only half a dozen really active instances whose communities I might be interested in, but it doesn't scale if there are hundreds of servers to check out. Probably the more important of the two IMHO in the long run.
1- You mean something along the lines of Hubzilla's nomadic identities? or how?
Nomadic Identity: The ability to authenticate and easily migrate an identity across independent hubs and web domains. Nomadic identity provides true ownership of an online identity, because the identities of the channels controlled by an account on a hub are not tied to the hub itself. A hub is more like a "host" for channels. With Hubzilla, you don't have an "account" on a server like you do on typical websites; you own an identity that you can take with you across the grid by using clones. Channels can have clones associated with separate and otherwise unrelated accounts on independent hubs. Communications shared with a channel are synchronized among the channel clones, allowing a channel to send and receive messages and access shared content from multiple hubs. This provides resilience against network and hardware failures, which can be a significant problem for self-hosted or limited-resource web servers. Cloning allows you to completely move a channel from one hub to another, taking your data and connections with you.
2- This is a good Idea. But I'm not sure how posible it is as of now
These are good points. It sucks that as a PhD student in CS, I still don't understand the workings of federation and other important Internet concepts. I hope someone smarter will work on this stuff, though.
I like the idea of aggregating communities. Especially if the modding tools are powerful enough. This could lead to communities being essentially curated lists of other communities. Which is great for new users to discover new communities without being overwhelmed by the unordered list of communities on the instance.
Another feature that I'd like to see is an equivalent to the mastodon's lists, a way to aggregate communities for yourself. So that you could browse the content of communities sharing a same theme in a dedicated view.
Point 1 is part of why I'm gonna start self-hosting a Lemmy instance at some point. If I host my own instance then I can back up my data and ensure it's never lost.
I think there's a third big thing: really good UX. I don't have an Android phone, so I don't know about Jerboa, but the web interface ... could use some work. I know the bug with new posts pushing the feed down is on track to be fixed soon, but wow, it can be really quite bad. iOS apps are getting way better quickly, too, but overall they're nascent.
I can't quite put my finger on it, but additionally, I think the ranking algorithm(s) could use some work. I can see there's tons of content, if I sort by new, but sorting by active results in stale posts, and sorting by hot doesn't seem to quite hit the sweet spot on tenured/good quality content vs. newness. The recent ranking bug(s) haven't helped matters there either.
Obviously there are plenty of bugs and QoL features that could dramatically improve the usage of Lemmy
Federation is not reliably delivering comments and other Lemmy content between servers. People need to be looking for such problems, so far there isn't any tool to observe or track this problem.
100% agreed with both. Especially DIDs just need to happen on all ActivityPub platforms. It will not only free users from being locked to an instance, but it will also allow instances to be much more flexible in scaling their capacity. Lemmy.ml is overloaded because they have too many users, and anyone who signed up there can no longer use their account. DID would allow them to immediately use their account from any small or large instance with spare capacity without changing the experience. The same would go for Mastodon.
The Fediverse in general needs federated identities, preferrably self-sovereign. Something like nostr, with validation signatures. E.g., you own your ID, and validate it with some mechanism of your preference. If midwest.social trusts your validator, it creates a space for your ID.
I don't think this is conceptually or implementationally difficult, but it would require a well written standard and consider both privacy issues (for users) and protections against spammers and bad actors (for hosting providers). I don't thing PGP's web-of-trust model would be a bad one. I think using the nostr network (quasi online chain) would be a great idea, and all of the parts are there; it would need a decent UI and support in each Fedi server implementation - which would be the biggest hurdle.
This would address the DID issue, and I agree with you that this is issue #1. Right now, users don't own their identities: their hosting service does. If midwest.social chose to, they could nuke my account and the canonical source of truth for all my posts. I run my own ActivityPub server and so own the account I use for Mastodon; and, perhaps, someday Fediverse federation will evolve to the point where I can use that account for everything. But it's an expensive node for me to operate, and not everyone can run their own server. Better, self-sovereign, and truly federated DIDs is incredibly important.
@DaughterOfMars That’s why you do your research and create an account on a successful instance so you don’t have that problem. I have a lemmy account and mastodon. I have lemmy because of the blackout but didn’t know what I was doing. I note know how to use lemmy and mastodon from the user side of things. Lemmy for my subs and general looking at the sub home page and communities. Mastodon to chitchat and everything else
A few points about #1 I did not see talked about. First global ID is of a lot less value on Forums then on things like Mastodon. At least the way I use forums I have no interest in building a persona. Frankly would prefer totally different IDs on different servers and frankly I think we should encourage people to be subject focused not persona focused on Lemmy anyway. There's to much of this ego stuff that goes on on other platforms.
The second thing is logging into multiple systems is a solved problem. If you do not have a password manager get one. Bitwarden or one of the LastPass versions depending on your platform for example. Another better way is SQRL or U2F. There is also a more recent thing, maybe PassKeys (?), cannot remember. In particular central authentication servers are nuts. Not even LastPass that specializes in them could do it correctly. Just NO. More then that let us not rebuild Reddit. We do not want central infrastructure.
I don't see the big problem in 1. Compare it to e-mail. If you want to switch provider you have to backup and restore your emails if you want to.
Nobody bats an eye that amiladresses contain a maildomain but with Lemmy everyone is used to the reddit way. Give it some time, people will get used to it.
The syncing and federation problems we are experiencing right now will get solved in the future, people will get used to the new naming scheme.
Been exploring, setting up my account, learning to use lemmy since 2am, this is the fundamental issue in facing, one that I cannot seem to wrap my head around.
I'm not sure (someone can correct me if I'm wrong) if my account is in certain instance, I can subscribe to communities in that instance, or other external instances. However, subscribing to communities in other instances is pretty tedious. I still don't know how to reliably do it on PC let alone mobile. It's a toss up for me if it'll open in my account or a new page asking me to log in to that instance.
Hopefully in the coming months lemmy can take off and we can have something amazing on our hands
Decentralized Identity could be implemented relatively easily just by allowing users to enter a their public key, like in git or PGP. How to sync the data is a different matter though. Maybe you can enter a username (e.g. @user@instance) in your instance's search field and have it federated to your account there if the cryptographic signature matches?
I think point two is interesting, but only if the communities choose too. One of the interesting promises of federation is that you can have competing communities with different interests. I can completely see commerical interests hosting a server (e.g the NBA or NFL) that has strong brand identity as a place to interact with stars, and then the un-branded fan sites. IMO, the competition is what makes the Fediverse interesting, and seeing that play out is fascinating.
My thought would be something like a small LDAP type server. Self-hostable. You make a user like myuser@mydomain.net and its honored as a log in for the various fediverse stuff.
So like it could hold the subsciptions for the communities on the various threadiverse servers you connect to localy, and when you open say lemmy.ml, part of the info sent for your user would be a list of communities you are subscibed to on lemmy.ml.
If it just handles the user auth, then it could also be a user auth for other fedivers stuff too. PixelFed, and Mastodon, etc. Each service could have its own sub section of the user object's info.
You would still probably end up with a "home" instance you would use, but if that home instance becomes untenable, or goes away, then you would just pick a new instance and log in there with your myuser@mydomain.net account.
Im not a good enough dev to code it, but thats my idea anyway.
I don't think these are such a big deal. Point 2 is cool, and sounds somewhat feasible, but I'd like to hear your plan to implement the first one. It's a lot of work, and I don't think it would affect flocking that much.
I don't understand the first one, why would we want that? Wouldn't it be enough to make it possible to move accounts similar to how mastodon does it (but including your local content)?
My bigger problem is that if a instance goes down then the community is gone. I like how Matrix has solved it that you can have aliases and the content gets replicated on other servers, etc. Then even if people defederate then you still have your old copy and people can keep using it.
Short term they need to work on the "all front page". It doesn't seem to give me popular posts from all instances, it's full of 2 to 3 to 4 day old posts that were never very popular. I have to manually go around (like to this community) to find content.
You can create a one-person instance and hold your identity there.
If you what you want is for every server to hold your identity, you have to trust all servers. I think that an evil admin would be able to impersonate any user from any instance if that were the case. How do you delete your account? Can an any admin delete your account everywhere? Which one is the real "you"?
I think #1 is a great idea, but it would take a lot of work and would probably be a pain to phase-in and phase-out across all platforms, but I do think it's a good idea, at least to offer as an option. While I am loathe to mention anything cryptocurrency and NFT-related, creating a simplified distributed ledger and smart contract system that would propagate through federated communities seems like an interesting idea. Alternatively, creating a way for users to specify their other usernames on other servers in a small bio in a profile page could be a possible compromise.
Your point #2 also sounds great, but I don't think this should be allowed between communities on defederated instances, because there's laws in many countries that can classify the act of hosting/providing certain content to be criminal. Therefore, if say if server_a resides in country_a, and country_a allows piracy, and server_b in country_b, and country_b considers it a criminal act to propagate certain information about piracy, the server_a/piracy and server_b/piracy might have different restrictions to discuss piracy. However, a less-informed mod may attempt to federate server_a/piracy and server_b/piracy, and insodoing accidentally make the owner/host of server_a unknowingly complicit in a criminal act.
I'm not a lawyer, and of course this is not intended to be legal advice, but I think that the effort would better be spent on implementing a solution to the decentralized identity problem, than the de-fragmentation of similar communities.
One other nugget to consider, assuming we were to replace Reddit, and the sum of the users on the fediverse were to achieve similar numbers to Reddit's glory days--we would definitely be scraped for AI training data. By keeping the communities fractured, that makes it far more difficult for a company to easily scrape all the information needed. While it might be trivial right now, in the ideally decentralized structure that the fediverse would take, it would take a lot more requests for a server to chase out every strand on every network.
Perhaps in this sense, it might be wise for instances to allow specific community defederation(ie, where server_a and server_b are federated, but server_a does not allow server_b/piracy to propagate(this may already be possible, IDK)), but I do not think it would be wise to allow community to community federation.
TL;DR:#1 is a great idea, OP, and it could be implemented in a simplified distributed ledger that propagates through federated communities, and uses a simplified smart-contract--or the problem could be solved by a compromise that allows users to specify their usernames for other instances in a small public bio. Addressing #2, this could cause legal problems in specific scenarios, rather it is more important for any instance to be able to disallow the propagation of specific communities from a federated server (if this isn't already possible).
Friendica, I believe, federates their groups. You can see them from mastodon as a user. I guess in AP vocabulary they are an actor. You can post to the group from mastodon too.
Well, #1 is kind of impossible now. Different people can have the same ID on different instances.
#2, unless they really want to just be their own separate community completely, like an entirely different website, then yeah of course. That's the point. Regarding the current major defederation, my understanding is that this not meant to be permanent and is a different situation. It's a workaround basically.
How do decentralized identities interact with unique usernames? By Zooko's triangle, if identities are distributed and secure (implied by unique), the names are not human-meaningful. So we would be identified by public keys rather than usernames, like Tor onion addresses. Am I understanding this right?
There needs a new governing body similar to bitcoins, where decisions are made by admins on a democratic basis. Half yearly meetings etc.
I think decentralised IDs is a good idea, wouldn’t be too difficult to achieve, the donations should go into a larger pot and then split based on user size of instances to maintain them properly
Lateposting, but DIDs would also solve a problem I have on kbin. I have an account on a certain kbin server because I wanted to pick a smallish server. A server small enough that it isn’t a big hub and thus helps out with federation, but big enough that it’s probably not just one person’s personal server that will only ever run during the 10 minute windows where they personally want to check kbin, which probably won’t overlap with my own.
Sometimes that server goes down. So I also have an account on the biggest kbin server of them all, kbin.social, so I can still use the site and interact with it when my home server is down.
Posting this on Beehaw because I didn’t subscribe to Technology until after this post was made, and I currently have no way to force this post to show up for me on kbin.