August 16, 2012

Twitter is, without a doubt, my favorite social network. As I’ve told many of my friends, it’s an amazing way to discover new people to follow and to take the pulse of the people you find interesting. There’s an adage that circles around tweetstreams every so often that summarizes the point nicely: “Facebook is for the people you know; Twitter is for the people you want to know.”

Tonight Twitter published a bunch of new rules for developers who use their service. As is standard with rule changes (remember the reply kerfuffle?), there’s been a heavy dose of backlash over the last couple of hours – including from yours truly. What Twitter didn’t do was provide a good explanation of why they were making their changes. It makes a lot more sense if you tackle that question (even if you still don’t like the changes).

The new rules

At its core, tonight’s update about the direction of Twitter’s programming interface revolves around a fairly major change: Twitter discourages third-party developers from writing apps that mimic the functionality of the products released by Twitter itself. If you use an app like Echofon or (my personal favorite) Tweetbot, this is going to affect you. Twitter wants everyone using their own client. (Let’s ignore the fact that Twitter’s native mobile clients were pretty late to the game compared to pioneers like Twitterrific, and, as Gruber points out on Daring Fireball, Twitter’s own iOS and Mac client was a third-party app called Tweetie before it was acquired.)

But why?

Granted, the ratio of people who use third-party clients as opposed to Twitter’s official apps is relatively small. But why anger some of the most loyal users of your service… and why tick off some of your cheerleaders, the developers who make the apps?

The answer Twitter gives in tonight’s post is that they want to encourage a consistent interface across the platform. I can appreciate the intent here; if Twitter rolls out a new feature or changes how something works in the system, they don’t want to wait for every third-party developer to implement the change. I understand, but I don’t agree.

I admit, it’s strange to hear a loyal Apple user complain about limits placed by a platform owner on developers. And yes, it is in itself a bit inconsistent for me to shrug off the restrictions placed on iOS by Apple while also criticizing limits from Twitter in a similar scenario.

Third-party apps and services make Twitter a richer experience. I’ve really started to enjoy Storify; it’s a great way to collect tweets (and more) about related subjects in a single place – something Twitter’s tools don’t easily allow. Tweetbot also adds a thick layer of functionality on top of Twitter’s default service; it allows more sharing options, lets you switch between accounts more easily, and frankly does everything in a more seamless and convenient way than Twitter’s official apps.

In this situation, diversity allows innovation. That’s how Twitter has grown, and that’s how Twitter will continue to grow.

So let’s go back to the original question: why do any of this? I mean, really?

The answer (surprise, surprise) has to be advertising. Twitter controls the entire experience in its own app, including the option to insert ads (“promoted” stuff) anywhere it likes. If the same user visits the site using a third-party app, Twitter doesn’t get anything. Therein lies the problem.

The inevitability

This day had to come at some point; it’s the fatal flaw of Twitter’s current business model, and they’ve chosen to finally do something about it.

Are there other options? There must be compromises, like maybe…

  • Charge users an access fee to use third-party apps. Most developers probably wouldn’t like this, and it won’t fly for Twitter; it’s a numbers game for them now. New services like app.net, on the other hand, could be a new place for devotees who want complete control.
  • Push ads through the API and enforce rules for displaying them. This sounds like a great option, but it’d be really, really difficult to enforce. That adds a ton of overhead for Twitter.
  • Develop a mandatory revenue-sharing program for third-party apps. Sell ads in your app, Twitter gets 30%. Works for Google and Apple. Could it work for Twitter? Again, lots of enforcement and overhead.

In a dream world, I hope the complaints from developers and loyal users will cause Twitter to reconsider their policy. But in reality, a change like this is inevitable in order to allow Twitter to be sustainable. Something’s gotta happen for them to be successful as a platform.

But again, it doesn’t mean we have to like it.