You want people to run their own servers? Design and build servers for individuals, not communities and let communities arise from the interconnections between those servers.
Because that’s the only way we can compete on ease of use with centralised systems. Not by mimicking their complexity but by side-stepping it. There is orders of magnitude difference in complexity between a system designed to serve just one and one designed to serve one, two, or a hundred thousand.
When tools, protocols, or activities become too complicated, centralization will creep in. Hosting is complicated, and lo and behold we end up with largely centralized Web.
It's on us to design our tools such that they are *simple*. And when we do, centralized services will have less room to manoeuvre. The point is: we should not parrot centralized services, but instead design simpler tools.
As a friend put it: at least sometimes we have to be able to say "this code is now complete". No new features needed.
This Mastodon instance is for people interested in technology. Discussions aren't limited to technology, because tech folks shouldn't be limited to technology either!