Our beloved Twitter has been digging its own grave for several months now. Recently, the service has experienced an absurd amount of downtime. There have been numerous posts calling for Twitter to be replaced. With so many problems plaguing Twitter, it seems the company could care less. Here are a few factors that are helping to kill Twitter.
Too Many Twitter Apps
There are thousands of Twitter applications out there. In fact, there’s a new one that pops up everyday. Twitter’s API is constantly hammered by a humongous crop of Twitter apps with well over 600 requests per second. On top of the growing number of users that use Twitter, I’m sure the majority of us use 2-3 different Twitter apps to provide better functionality that Twitter refuses to provide out the box. The constant hemorrhaging of the Twitter API can put a severe strain on the service. Think of it like the three little pigs. Twitter is one of the first two pigs. If they’d built the service out of bricks, banging the crap out of the API wouldn’t’ blow the whole house down. Unfortunately, Twitter’s architecture seems to be made of straws.
Lack Of Communication From Twitter
Communication is important for any business. Users appreciate being informed about why a service they use isn’t working the way it should be, regardless of whether the service is free or paid for. Twitter is no exception to this. How many times has Twitter informed you of why it may have been down? I can only count on one hand the number of updates I’ve seen from Twitter about their downtime. Twitter users are up in arms with the lack of communication from Twitter about the service’s problems. Up until recently, Twitter in no way, shape, or form provided reasonable information to users as to what was wrong with Twitter. Come to find out, the company doesn’t know what’s wrong with Twitter.
Architecture and Scaling
It seems the Twitter team was not prepared for the exponential growth that Twitter has and is still achieving. There has been no easy way to scale Twitter though numerous ideas are floating around as to how. We’ve even discussed Twitter’s architectural problems before in “Twitter and the Architectural Challenges of Life Streaming Applications“. Alex Payne, one of the companies software engineers, has also gone public with a blog post about the frustrating problems Twitter has had with scaling Twitter based in the current architecture that the service is using. Payne also notes the following:
We’ve made progress, and we’re more scalable than we were a year ago, but we’re not yet reliably horizontally scalable. Why? Because there are significant portions of our system that need to be rewritten to meet that goal.
Twitter’s architecture was not made for a messaging system, which is what Twitter has become. Instead, the architecture was structured as a content management system. This plays a huge part with Twitter’s scalability issues. However, it seems odd that they didn’t create the architecture for mass messaging since Twitter is essentially a messaging system for the masses.
Many Solutions, Not Enough Being Done
Even with the numerous solutions floating around, not enough is being done to stop Twitter from digging its own grave. Payne states that they intend to replace the existing system component by component. However, the will take too long for Twitter users and possibly result in even more downtime. With numerous other factors to consider, it’s more than clear that Twitter is digging its own grave with tons of help from both inside and outside the company. The question then becomes: where will you go if or when Twitter dies?