It's funny that web3 is being sold as the decentralized web when that's what the internet architecture was literally designed for -- to survive an apocalyptic nuclear war. However, big players used their ability to purchase infrastructure and unforeseen flaws in the protocols to centralize much of the activity on the web. Lol if you think money can't do that to any decentralized architecture.

One thing that would at least help. We got the web fractured from a p2p two-way street into a broadcast medium because ISP's were able to use the exhaustion of the IPv4 address space to limit stable IPs to business class connections. I can't claim we can bring that back, but wide deployment of IPv6 would at least demolish the argument against consumer static IPs and open up the network as a fair flat graph again.

I 100% agree. Imagine if self-hosting was taught in schools. Would Facebook and GMail be this big?

I'm dreaming of an alternate universe where you read your friends microblogs through RSS, with the client and timeline algorithm of your choice. Everyone has his own mail server, with proper open-source spam filters. Open-source is a public service, receiving donations from governments. We were so close to this.

No regular person would ever do any of the things in your alternate universe. Even most tech people wouldn't, because it's a massive pain in the ass.

I don't know why you think the world was ever close to this.

The obvious question is why should these things be a pain in the ass.

If you want everything to be decentralized it will always be a pain in the ass and have way more friction compared to a centralized alternative even if it's pretty easy in absolute terms.

The problem is psychological, not technical.

Does it have to be that hard though?

From a user point of view, RSS readers are easy to come by.

From a server point of view, I think a raspberry pi build that scripted most of the setup, is an achievable goal. Not an easy one, but doable.

Sadly, even if you made it super easy, most folks would stick with the big names. Still, it could be nice to start a little community of self hosted sites...

> From a server point of view, I think a raspberry pi build that scripted most of the setup, is an achievable goal. Not an easy one, but doable.

Yes! I'm thinking something like standardizing Docker deployments with nginx-proxy[0] (which takes care of automatic Let's Encrypt certificates, it Just Works™[1]). If everyone shipped a docker-compose.yml tailored to nginx-proxy this would make it very easy for anyone to deploy stuff on their home server.

Then you'd need a standardized interactive install script that asks for things like hostname, email details, whatever else needed in .env (or whatever config). Perhaps a good ol' Makefile?

  make setup      # interactive install
  make up         # run docker-compose up -d
  make down       # run docker-compose down
  make uninstall  # uninstall, plus clean up volumes and images
People would just need to learn how to (after installing Docker, which is trivial) git clone a repo and then run those commands and go to the URL and finish the setup (if relevant).

[0] https://github.com/nginx-proxy/nginx-proxy

[1] This is how I deploy all my Docker stuff, it usually takes from 1-5 minutes to modify docker-compose.yml to fit