The background debate about whether or not Twitter can actually scale has intensified. More than a year ago I asked “Twitter At Scale: Will It Work?” Today Twitter is far, far bigger. And the uptime woes continue.
The big problem with Twitter is assymetric following without limitations on the number of connections, which means that a single account can theoretically have a number of followers limited only by the total number of Twitter users. This adds massive complexity to the system. Other services solve the problem by forcing both sides to agree to friendship, a one-to-one relationship. Others, like Facebook, limit the connections to 5,000 as well. But Twitter has no limits on complexity. And since they are a centralized, bottlenecked system, it is both hard to scale and easy to attack.
The short messaging format is popular, and it is now part of the web. It should thus be designed and implemented as a decentralized service like most other core web services (email, DNS, blogging etc.). The Internet was built to withstand a nuclear attack, and it is a platform that can’t be owned, attempting to completely centralize a new core service has never worked.
As Twitter grows, it needs to be architected more like the Internet.
New Twitter COO Dick Costolo says that he believes Twitter can scale in a centralized way, meaning the status quo will continue. But he acknowledges that it is a theoretical debate at this point, and he says that he hasn’t ruled out decentralizing Twitter.
We believe decentralizing Twitter solves two problems – it will help the service scale infinitely. And it is potentially a very lucrative source of revenue.
Email Is A Business – The Microsoft Exchange Model (Get Your Customers To Pay You And Do The Heavy Lifting, Too):
Twitter should look at how email, and commercial email servers such as Microsoft Exchange Server, developed. The business generates $2 billion or more in revenue for Microsoft, and powers the majority of corporate office functions (email, calendar, etc.). Businesses pay a few hundred dollars for Exchange, plust $50 or so per year per user. Plus, the businesses handle all the infrastructure costs (servers, bandwidth, etc.).
Twitter should sell Twitter Server just like Microsoft sells Exchange Server. They’d then run their own Twitter node on their own hardware.
Twitter likely couldn’t get $50/user/year out of Twitter Server, but they could certainly get more than the zero they are charging now. And they’d move the burden of scaling Twitter to businesses that want a highly stable solution. And users could still go to Twitter.com to create accounts for free, too. They just wouldn’t have the benefit of controlling the data on their own servers, and having the peace of mind knowing that their uptime was conditioned only on their own infrastructure, something under their control.
There would be some issues to work out, like the namespace and messaging between parties (If we had our own Twitter server, my user name would have to be something like @nik.techcrunch, or we could just use the existing global namespace – email). Twitter could build and sell a kick-ass Twitter server for corporations and those who wish to control their own messaging and their own brand.
But the benefits would be huge. Possibly hundreds of millions of dollars in revenue. And a partially decentralized service that would stay live even if Twitter.com went down.
So there are the benefits – revenue, lower operational costs, higher uptime. And there’s one more benefit, too. A decentralized Twitter would suck the air out of the idea that Twitter needs a decentralized competitor. Twitter could own the micro-messaging protocols and core service for the long term. Twitter owns the protocol, the users, the format, the trademarks, the brand and the name – why does it also need to host the whole damn thing?