Hey all. Not sure if this is the right place to post this, please point me in the right direction if not:
So I only came here because of the exodus from reddit, but I’m pumped to see this community and all this technology people have been making. It’s like a return to the old-school, user-operated internet instead of the big awful silos that have been dominating the landscape since the early 2000s. I’m in.
So quick question, are there plans or projects in the works for distributed hosting (making it easier for the users to take up the load of storing and hosting content so the instance operators aren’t stuck with the hosting costs)?
I ask because I’d like to work on a project to implement this, as I feel it’d be a massive further step forward. I’m not sure though if there’s anything existing I should be trying to get up to speed on or if I should be thinking in terms of starting my own project if I want to be working on it.
I don’t know if ActivityPub has anything to further distribute beyond instances but what you’re talking about reminds me of IPFS and some crypto backed stuff like Filecoin.
Yah, I’m asking because I have a specific (handwave-y) solution in mind using, among other things, IPFS. I’m not too much up to speed on Lemmy’s internals so my solution probably needs big adjustment before it’d be realistic. I planned to make a separate post where I talk at more length on why I think this is needed and some of the ideas I had about solutions; this post was just to get some idea of how the community looks at the issue.
I’ve had similar musings as yours I think. I think the way to make a decentralized community as user friendly as a centralized one would be making the decentralization transparent somehow. One way would require a way for hosters to volunteer computing resources in a way that’s more like adding cattle to a herd rather than pets to a family like in fediverse/matrix/email. More ephemeral and happening in the background. I think the downside is that this is getting closer to peer-to-peer which has a lot of overhead and scaling issues (factorial growth). Federation lies between p2p and client-server but maybe there is room to push it closer to p2p to unlock transparent distribution of resources.
I completely agree with you. I’ve only just started using this Fediverse stuff but my immediate impression has been this is cool but most of this needs to be invisible to end users.
In particular I think things need to be set up to treat instances as potentially temporary. Right now you’re placing a lot of trust in just some random person if you want to try and build up a community. For any number of reasons they could pull the rug out from under you at any point and if that happens your account is gone and (as far as I can tell at least) your content is frozen at the last snapshot it sent. Accounts need to be global or at least mirrored to other instances you interact with. And instances should be able to keep adding posts and comments to that snapshot and sharing the updates to other instances so it’s like it never went down (I don’t think this happens now).
Hm, yah, this a really good point.
So, I thought through what would be a good way to move forward what I talked about and came up with this. Originally I was thinking in terms of trying to have a world-shared data store, so that something like what you’re envisioning would be trivial (if your instance goes down, all your data is still there in the shared data store, so you just use your same user and all your stuff on a different instance transparently), but then I scaled it way way back from that plan in order to make it doable.
And actually, depending on how things are structured, it might be possible to do something like what you’re talking about with my approach. If you read my proposal, I’m talking about having data stored on what I call “peers”, and you’d definitely need to have your peer configured so that all your user’s data is mirrored there permanently. I think that that means it might be possible, if your instance went down or you wanted to move to a new one, to grab your user data from your peer and move it to a whole new instance and have it work there in the same way. Some for a community by the moderators. Maybe. It’s too far ahead of what I understand about Lemmy and what I’ve fleshed out about how the system works for me to say anything about it for sure though.
Yep, I 100% agree. Here’s my write-up of more of the details of my proposed solution. I’m planning to start work on it this week; if you have feedback or want to help, I’d welcome it.