Federation! (Goodbye, Google Plus)

So how could the Internet and its core social values survive and resist against such giants that control what information is displayed and how people are “allowed” access to it? Well, we lost one of the main features of the Internet since the mid-1990s. Back then, I used to do presentations saying that the major advantage of the Internet was that nobody truly controlled it. It was a federated system, where you had to “play nice” to be able to interconnect with other networks, allowing each operator to have authority over their own network, but demanding a ground set of rules for networks to communicate. The core Internet protocols still work pretty much that way. Internet Email, for example, is pretty much a federated environment: you can set up a mailbox wherever you wish and it will send email to any of the other 3 billion Internet users (I’m counting mobile users too), no matter what application you’re using, no matter what server software is running, or where you are physically located and connected. That happened because SMTP, the underlying protocol, is designed from the start to be completely independent from any “central” structure and is a federated protocol. We have a lot of similar protocols like that, we just forget how many.

New services on the Internet, when launched, tended to follow the same effort. When Tim Berners-Lee invented the World-Wide Web, he designed a protocol for a distributed, federated environment, where anybody could set up a server and hyperlink to anyone’s server, without requiring a central structure. That was in the early 1990s. I’ve racked my brains to figure out if there is any more recent protocol which follows the same rule. In fact, most of what we see as distributed/federated environments — like, say, Jabber/XMPP, which is what Google and many others us for messaging services — run on top of the HTTP protocol, so they are by nature distributed and federated as well.

On the other hand, everything designed since then is pretty much centralised and proprietary. Take Skype as an example. You cannot create an open-source Skype-compatible environment and expect it to interconnect with Skype’s own network. Skype is hardly interested in that; they want users to be bound to them. What happened in the 2000s is that corporations wanted to control their users and environments, but also make sure that third-party developers would be able to integrate things with their services. So these days pretty much everybody has APIs. APIs are great — a way to make otherwise unrelated applications or services to talk to each other — but they are not a federated environment. By deploying an API, a company is just saying that “we allow you to connect to us, under our own terms.” You could imagine something like, say, email working that way: everybody would have a different email protocol to connect clients and servers together, but email providers would then release an API allowing third-party developers to tie into their services and read or send messages through their servers — under their own terms, of course. This pretty much would ruin the way email is used today. If you think this is far-fetched, think again: all it takes is for an industry giant like Microsoft, Yahoo, or Google (who, together, run probably 90% or so of all email on the Internet) to announce that, for security reasons, and to limit spam, they would abandon SMTP and develop their own proprietary network for delivering mail. Oh, and by the way, here is a cool plugin we’ve released that ties into your “legacy” SMTP server which will authenticate with our network, provided you register to get an API key. Which we can revoke at any time without reason and you’re not allowed to sue us if we do that, of course.

All it takes is one of the main email providers to do exactly that. Wait, I forgot. There is one who did it: Facebook. Facebook “email” works exactly like that. In fact, I don’t even think they have an API for tying into their email system. Zuckerberg correctly imagines that he now operates the largest email server in the world, with 700 million email addresses, so he can prevent others to tie into “his” network, and can set whatever rules he likes for email. And that’s exactly what he’s doing. Ironically, you get an “[email protected]” email address, but you can’t communicate with non-Facebook users inside Facebook. Clever, isn’t it?