That doesn't mean we should give up trying to federate things, though. The major upside (for me) to federated systems is simple: choice. Choice over the client you use. Choice over the servers you use. Choice. For something so fundamental as how we communicate over the internet that's incredibly important. I want to be able to use the app I want without having to figure out if the other person is using the same app, and i don't want to have to have 10 different apps on my phone just to keep in touch with everyone.
The reason I think that things like email and SMS are still so prevalent is how you don't need to care what service the other people are on, you don't need to worry about how other people are going to talk to you, it all just works. It's true that currently a lot of the email traffic is going through google, that sucks, but:
- If google discontinues gmail then your email still works, people can still talk to you. It's annoying you need to get the new addresses for all your contacts that used to use gmail, but that will get resolved quickly enough.
- A day may very well come where people decide another service is better, but then people are free to move there without having to try and convince all their friends and family to also switch. (Take browsers, for example, the browser that everyone uses to access the internet changes over time. And its great! People use what they want to use, the servers don't care, everything just works ─ well, more or less).
Not everything needs to be federated, often there are situations where its advantageous for there to be a central authority. (The blog post highlights a few of those situations). That's also great! People who want those things are then free to choose to use those things as well. Using 2 apps you want to use is still better than 10 you don't want to use.
Federation is hard, and it imposes constraints, but I really, really hope that we can build something that works before we give up and hand over all our comms to a particular company.
This is exactly why I work at matrix.org; I just want to be able to use the clients I want without having to care what everyone else uses. I don't even have to care if matrix.org goes down (except the fact I have to fix it), I can happily talk to other people since I connect via my own server.
I do actually agree with a lot of what's said, I just disagree with the conclusion. Federation iss hard, but it's just so worth it if we can get right.
Isn't that exactly the point of the post? If you have lots of choices, what you end up using depends on the intersection of features that your client and the client of the person you communicate with can handle. Which usually ends up advancing slowly, if at all. I'm still a user of XMPP and maybe there is a way to do video chats. But I don't bother trying to set that up as I don't expect it to ever work reliably: I just checked five random contacts and everyone of them uses a different jabber client. So what I end up doing is using XMPP for text chat on my desktop machine and skype/hangout if I need video conferencing.
Same with email. Apart from a bunch of anti spam headers, emails I receive basically look the same they did 10 or 20 years ago. Trying to implement accessible end-to-end crypto probably won't happen for the same reasons.
I've been a user of Matrix for going on a year now, and they continue to roll out updates and improvements, over ALL of their platforms -- I use the android, iPad, and desktop/web apps every single day. They're also a federated service. Several of my friends run their own servers.
Some days there's a little bar across the top of my page on the desktop client that says "refresh to update your experience!" and I do. My experience updates. Everything continues to work.
Matrix has done such a good job making it easy to roll out updates that people... do.
And I can't tell you how thrilled I am to be living in a federated world. You just can't compare this to e.g. Slack. I can get friends from all backgrounds on the same system because it's so open.
The Matrix team is proof by example that federation and rapid forward motion is possible.
Open Whisper Systems pays people to work on Signal. A major reason XMPP video chat never took off is that no popular Windows client supported it. What if the XMPP Software Foundation had funded that work?
With a centralized system, you cannot choose the servers you use, but you can still choose the client, if the procotol is open and versioned.
As explained in Moxie's post, being able to choose the servers you use doesn't help if all servers use the exact same protocol with the exact same features, frozen in time.
> The reason I think that things like email and SMS are still so prevalent is how you don't need to care what service the other people are on, you don't need to worry about how other people are going to talk to you, it all just works.
You're right, people continue to use email and SMS because they are available everywhere. But people also use things like Facebook, Skype or WhatsApp because of email and SMS limitations.