It will immediately be used to mine bitcoins.
Sounds like IPFS or torrents.
I am aware of those two, but those are just for file storage. I was thinking something more general. Like having a Virtual Private Server, that people can extend with their donated resources. VPS can be used for more than just file storage. It can do processing as well.
it will 100% be abused by assholes for mining some millicents in monero or do ddos attacks.
Processing for a website need to be as fast as possible. Nobody would like a loading screen "please wait - contacting p2p node 32292 for rendering your page" that will last several seconds, pages on a peer and database on another, plus all the overhead to manage sync between all the nodes
file storage doesn't require ultrafast processing. Make a static website with hugo, host pages on gh pages, and downloads on ipfs
The problem here, to my understanding (context: I work in IT, but I'm not claiming to have a PhD in comp sci or whatever) is that something like BOINC works because the computation is highly self contained. Basically you're just working through a list of math problems.
But something like, say, Lemmy or Mastodon isn't really all that heavy on raw math. Instead it's all about referencing items in databases, and dynamically assembling them into pages that are presented to a user. So it's mostly about a) storing information, and b) accessing the stored information.
You can't really offload that, because you have to be able to trust that wherever you're putting the data, it'll still be there when you need it. Not very easy when you might just turn your PC off at night... Or have a power outage. You also have to deal with the security and privacy issues involved in placing that data on random people's computers.
Then you have the problem of connection speeds. Consumer internet connections typically have pathetic upload speeds. Generally the biggest issue with doing any kind of distributed database is that you need lightning fast communication speeds between every component. This is why no one builds distributed databases.
Once you actually present the data to the user's PC, most of the "processing" happens on their end, so you're already donating as much power as you reasonably can.
Like I said, I'm not a hardcore computer scientist, so there might be something in missing here, but to my understanding there's really no way that you could usefully leverage any kind of "borrowed" processing power for any sort of platform or service outside of the very narrow field of "crunching big numbers."
This is a genuinely fresh and intriguing idea, but you've sort of answered your own question (as have most of the commenters) by noting it would immediately be abused. So I think you are going to have to be the one deciding how your compute cycles and bandwidth are being used.
BOINC/World Community Grid is the obvious choice since they are set up for exactly this use case. There's also things like Sheepit - a render farm. Maybe you could run a Tor node .
Self Hosted - Self-hosting your services.
A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.
Rules
- No harassment
- crossposts from c/Open Source & c/docker & related may be allowed, depending on context
- Video Promoting is allowed if is within the topic.
- No spamming.
- Stay friendly.
- Follow the lemmy.ml instance rules.
- Tag your post. (Read under)
Important
Beginning of January 1st 2024 this rule WILL be enforced. Posts that are not tagged will be warned and if not fixed within 24h then removed!
- Lemmy doesn't have tags yet, so mark it with [Question], [Help], [Project], [Other], [Promoting] or other you may think is appropriate.
Cross-posting
- !everything_git@lemmy.ml is allowed!
- !docker@lemmy.ml is allowed!
- !portainer@lemmy.ml is allowed!
- !fediverse@lemmy.ml is allowed if topic has to do with selfhosting.
- !selfhosted@lemmy.ml is allowed!