News of Twitter's announcement to developers yesterday has created a bit of a shockwave online - essentially they just delivered a killer blow to their developer community, by telling them to stop developing new clients for Twitter. Supposedly this is because they want people to be able to enjoy a unified experience on Twitter, instead of the fragmented approach people get from clients that function in different ways - Tweetdeck, Seesmic etc.. But this is a pretty big announcement to their community and I want to look at some of the possible drivers of this decision. You don't just overhaul your developer community like that, and one of the best things about Twitter was their fresh approach and open API, that's meant we've been able to enjoy some incredible products across the platform.
Protecting their revenue
Twitter is currently at a crucial period in their road to monetisation. Their promoted tweets product is proving popular with advertisers, but the reaction by users has been mixed. For this reason, it's understandable why they would become more protective over the user experience and their own content. There is a very obvious opportunity there for a developer to come out with an 'ad free' version of Twitter that could present a major benefit to users. When they made promoted tweets available to developers, it was opt-in, so you could choose to develop a client that presented a completely ad/sponsorship free environment. With Twitter effectively stopping new clients, it's easy to see that this is a major factor. Perhaps a less drastic approach however, would have been to make it mandatory that clients accept promoted tweets, and worked on a more equal shared-revenue model with developers.
Protecting their users
Something that can't be ignored in this of course, is Twitter's claim that some applications were repeatedly abusing their terms of service, and in turn, users' own privacy. As Twitter's community and userbase is growing rapidly alongside the development of new products by third-parties, this is an important consideration. It seems that the unfair actions of a few may have severely impacted their entire developer community and user security in a pretty big way. You have to give Twitter their credit here, if it is indeed the case. It's not a situation that they would have chosen to get themselves in, and unfortunately points to the risk of running a service so openly in the way that they did. Eventually, someone's going to come across and spoil the fun.
Is the 10% that important?
One thing that struck me as a bit odd when reading through their statement is that they are promoting the fact that over 90% of users are accessing Twitter through 'official' apps, but then claiming they want more control over the experience, so users have a unified experience. This is where the argument falls down a little bit, as surely they should just continue to work on their products, without the risk of severely annoying their developer community, who are reaching a minority of their consumers. In very practical terms, this could mean a lot of wasted time and money by developers currently working on new products, that would never have impacted Twitter in a huge way, but continued to contribute to the healthy developer community. The claim for a unified experience seems so far removed from how Twitter originally approached their product, that you can't help but think it's all (or largely) about the money.
How long will they support existing applications?
Twitter have stated that existing third-party applications that effectively mimic the Twitter experience, such as Tweetdeck, will still be supported, providing they rigorously adhere to the new terms of service. What's unclear though, is just how long this will continue to be the case. I doubt that the changes they issued yesterday will stop there, and a likely next step a few months down the line would be that they announce that all clients will no longer be supported, and shut down. Now this is just a prediction of mine at the moment, but it would be in line with moves by other social networks. Facebook for example firstly strongly advocated that developers use Facebook credits as the accepted form of virtual currency, before making this mandatory from July this year, and causing a fair amount of outcry among the developer community. This move by Twitter just feels a little too sneaky. Tweetdeck and Seesmic specifically radically overhauled the way that people experienced Twitter. It wasn't until I started using Tweetdeck that I really fell in love with Twitter and gave it more of my time. For Twitter to be happy to encourage this at the start while they figured things out themselves, then change the rules so drastically seems unjustified.
Have they shot themselves in the foot?
What remains to be seen in this announcement, is just how it will affect Twitter themselves. When you operate across an open API like they do (or did), you are instantly opening up the amount of people that can take your product from good to amazing. Sure, Twitter are still encouraging development overall, but implementing restrictions like this means that at some level they are putting a stop on the amount of products that can take all of the amazing information available through Twitter and make something incredible. We know the Twitter that encourages development and we've seen all the products this has created. What we don't know is this other Twitter - the one that is more focused on revenue (and there's nothing wrong with that), and less focused on working openly with developers. The long-term effects of this won't be known properly for a while, least of all by Twitter themselves.
The decision that Twitter took is by no means easy, and would not have been borne from one contributing factor. Overall they are doing this to protect themselves, which makes perfect business sense. But why this is a bitter pill to swallow is because it's a change from how they originally did things, both with users and with developers.