this post was submitted on 17 Jun 2023
224 points (100.0% liked)

Technology

37691 readers
297 users here now

A nice place to discuss rumors, happenings, innovations, and challenges in the technology sphere. We also welcome discussions on the intersections of technology and society. If it’s technological news or discussion of technology, it probably belongs here.

Remember the overriding ethos on Beehaw: Be(e) Nice. Each user you encounter here is a person, and should be treated with kindness (even if they’re wrong, or use a Linux distro you don’t like). Personal attacks will not be tolerated.

Subcommunities on Beehaw:


This community's icon was made by Aaron Schneider, under the CC-BY-NC-SA 4.0 license.

founded 2 years ago
MODERATORS
 

In my opinion, there are two big things holding Lemmy back right now:

  1. Lemmy needs DIDs.

    No, not dissociative identity disorder, Decentralized Identities.

    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.

  2. 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.

(page 2) 50 comments
sorted by: hot top controversial new old
[–] [email protected] 4 points 1 year ago (17 children)

Regarding point 1- if people would just stop signing up on lemmy.world, lemmy.ml, and beehaw.org, because they have the most people-

Things would go much smoother!

Pick an instance based on uptime, or hell, create your own instance.

Piling all of the eggs into a single basket is destined to result in failure.

[–] [email protected] 3 points 1 year ago (3 children)

I signed up with lemmy.ca and I regret it. It doesn't load "all" content very well so I have to hunt to find content. Hopefully they will fix it.

load more comments (3 replies)
[–] [email protected] 3 points 1 year ago (15 children)

For sure. But beehaw in a good example of aggressive moderating (which is totally their right) that can limit growth and why a decentralized approach is necessary. There can’t be a single massive place for x content. It’s rife for abuse. Allow it to be categorized and decentralized where beehaw can contribute but in their own way and users outside of beehaw can index and participate with them and even other instances that maybe beehaw defederated.

load more comments (15 replies)
load more comments (15 replies)
[–] [email protected] 4 points 1 year ago* (last edited 1 year ago)

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).

[–] [email protected] 4 points 1 year ago* (last edited 1 year ago)

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.

[–] [email protected] 4 points 1 year ago (1 children)

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.

load more comments (1 replies)
[–] [email protected] 4 points 1 year ago* (last edited 1 year ago)

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?

[–] [email protected] 4 points 1 year ago (3 children)

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

load more comments (3 replies)
[–] [email protected] 4 points 1 year ago

I think number 1 is important so it’s easier to move. Otherwise we could feel centralized to one instance rather than feeling free to federate

[–] [email protected] 3 points 1 year ago (1 children)

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.

[–] [email protected] 4 points 1 year ago

Using DIDs would involve a completely different system. Everyone would have to create a new identity anyway.

[–] [email protected] 3 points 1 year ago (2 children)

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.

load more comments (2 replies)
[–] [email protected] 3 points 1 year ago

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.

[–] [email protected] 3 points 1 year ago

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?

[–] [email protected] 3 points 1 year ago (2 children)

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"?

[–] [email protected] 4 points 1 year ago

I would assume the same way any other system with untrusted nodes works: with the client authenticating by use of a cryptographic signature on everything they submit.

load more comments (1 replies)
[–] [email protected] 3 points 1 year ago

The idea of federating communities does sound like a good idea. Now that I think of it I'm surprised that isn't already a thing.

load more comments
view more: ‹ prev next ›