this post was submitted on 21 Jul 2023
1498 points (98.9% liked)
Technology
59642 readers
4636 users here now
This is a most excellent place for technology news and articles.
Our Rules
- Follow the lemmy.world rules.
- Only tech related content.
- Be excellent to each another!
- Mod approved content bots can post up to 10 articles per day.
- Threads asking for personal tech support may be deleted.
- Politics threads may be removed.
- No memes allowed as posts, OK to post as comments.
- Only approved bots from the list below, to ask if your bot can be added please contact us.
- Check for duplicates before posting, duplicates may be removed
Approved Bots
founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
ok. so you are misunderstanding what i am proposing then.
i can explain in more detail any part of the design if you wish.
Sure π
I think the one thing we could adopt from crypto is having public keys as user IDs, instead of tying it to an instance. But that would require users to handle their own keys, and people are just reeeaaally bad at that!
the advantages of this:
There is so much wrong with this that I don't even know where to begin.
I don't intent to be rude, but this is just not how you build a decentralized/distributed system. The network would grind to a halt if every user app had to search recursively through a portion of the network, and aggregate & rank posts by itself. Aggregate values (communities, votes and so on) would never be right, because you'd never be able to acually gather all events for a particular entity in time. This might work in a local network of 10 nodes, but not on a global scale.
On top, who would pay for those nodes you are querying? There is no relationship between the users and the nodes, so why would anyone just run a node for others or be willing to pay anyone else in this scenario? Servers cost money and stuff. And your spam filtering and moderation solution would be the exact same as with instances, so nothing is gained here.
Maybe have a look at the Session messenger and their Oxen network. They go to great length to make sure the work is equally distributed among nodes and they are compensated fairly. This doesn't just happen magically by itself, and there are many bad actors who will try to exploit any weakness they can find.
So I just think it's impossible to create something like lemmy in an anonymous way, because content moderation is a human decision. There is no one correct mathematical solution, and I also can't send some kind of filter query to a server to do it for me. All I can do is read the general rules that another human being has wrote up, subscribe to their moderation "service", see how they are doing, and decide to stay or switch to another.
Similarly, if I don't want to aggregate all the posts in the world by myself (as you are suggesting), then I'll have to fine someone to do it for me, and somehow pay that someone for their service. This part is actually kind of solvable (again look at Session), but it is not straight forward at all! It would involve crypto currencies, mining/staking, and some kind of client-side monetization. For this part I think trusted instances are just a much better solution, because we are building a social structure here anyway.
ok, you make good points, but i feel like the algorithm could work to not have the system grind to a halt. i'd have to look at other examples where this has been done. but maybe i am overly-optimistic and it's not possible.
the people who are already running nodes, like lemmy.world, lemmy.ml, me, etc. i run some services on my home server that i let anyone use, because i have the hardware and the bandwidth to be able to afford it. there are enough people who have the necessary hardware and bandwidth to contribute to it at minimal detriment to them. it's already an open-source project where people volunteer their time to code it.
i'll read up on oxen network.
wait who said anything about anonymous? what are talking about being anonymous? there would still be user accounts.
this is already what is done, except that the data is not stored in a replicated and distributed manor. you get all the posts in the world of a community of an instance. it is one server, with all the data stored on its harddrive, like a traditional website. in what i'm proposing, this is also what would happen in many cases, because the thing wouldn't requery the entire network every time you request posts, there would be a time threshold, like how posts are cached on your local mobile device for most social media apps. posts would be cached on the server.
now, yes, this architecture would in fact result in more network traffic occurring between each and every node, as they receive updates about events on other nodes. so that would be extra burden upon the hosts. but i believe it is something we can work through.