Twitter has had a love-hate relationship with developers since they first came out with their public API in 2006. The API (Application programming interface) is basically what third party vendors such as Tweetbot, Hootsuite, Buffer ect. build their apps on.
For the purpose of this piece I am going to be referring to the main Twitter client and Tweetbot as the third party client. The restrictions that I talk about Tweetbot facing apply in the same way to ALL Twitter developers.
Initially the API was completely open to all and was an instant hit. It opened up most of the social network’s inner workings and enabled full access to tweets and content published on Twitter. There were no limitations and many companies started to build products on top of the Twitter API.
The first four years were good, apps were built to enable URL shortening, Tweetie (the first Twitter app on iPhone) was built and later bought by Twitter themselves. Apps like Echofon and Tweetbot offered alternative experiences for Twitter users.
Twitter starts choking developers
In 2010 the honeymoon between Twitter and developers ended as Twitter brought in a number of decisions causing anger and disappointment. First Twitter adopted OAuth protocol which was inevitable for security purposes but at the time OAuth was not widely adopted and many developers struggled with the implementation.
Twitter then started on the road of essentially choking developers of alternative Twitter apps. They bought Tweetie and Summize and announced that they would become part of the core platform. Those apps were built and integrated into the very Twitter experience you use on your mobile app today. Developers were understandably concerned and upset.
They then developed their own URL shortener and threatened to kill all others.
Twitter then signed partnerships deals with Google, Yahoo and Microsoft to include tweets in search results motivated by the desire for more traffic and a need to generate revenue.
Open war on alternative Twitter clients
This was all building into what would become war with developers and would bring the relationship towards breaking point. At the start of 2012 Twitter imposed a 100,000 token limit on connected apps that “mimic or reproduce the Twitter consumer experience” which instantly crippled many of them and capped the number of users they could have across the board.
OAuth became mandatory and embedded tweets and timelines were introduced as an alternative to applications that wanted to replicate the core Twitter experience in their own apps.
Twitter wanted to restrict third party app usage as much as they could so that more people would use their app which would help increase their ad revenue. Twitter wanted people to ideally use the core experience and nothing more. As a result many services were doomed to failure and only a handful would survive at the time.
Twitter wanted to be the dominant app of their own domain and feared others taking the throne. Developers were hoping that at some point following the IPO, relations would see an improvement. However those hopes were dashed as Twitter undertook one of their most ruthless moves yet. In 2015, just shortly after live streaming blew up with startup Meerkat, Twitter acquired its competitor — Periscope.
Twitter then revoked Meerkat’s access to the Twitter API, acquired Gnip and shut down agreements for resale of data with its other partners. It was branded an evil move that destroyed innovation. Meerkat tried to keep afloat and compete but Twitter was simply too much and Periscope took centre stage at the time.
The problem with the Twitter app
The Twitter app is about as vanilla an experience as you can get. What you see is what you get, and that is not always a bad thing but in Twitter’s case it is not a good thing. The app has improved over the years but it is still a horrible user experience.
Twitter likes to treat it like a playground at times and there is plenty of A/B testing which takes place across the platform. So layouts and features can change or come and go with no warning or announcement. Thats fine if you are a beta tester trying out a beta version of the app. However these A/B tests take place on the main app for the public and as a result you get half baked features rolling out to a number of accounts and then possibly getting pulled at a later stage which can confuse the experience sometimes.
It is straight forward, no bells or whistles and there is zero room for customisation. It is now packed with promoted ads and a bunch of garbage you don’t really want to see as well as an algorithm behind the timeline but you can opt out of that if you really want to.
It is not a bad app, but Twitter has built an app which is a long way from the quality of third party apps and those apps are limited thanks to Twitter’s API restrictions. The benefit of using Twitter over the others? Its free.
Where Tweetbot gets it right
Full disclosure from the start here, Tweetbot is a €9.99 app from the App Store. Now, if you are a hardcore Twitter user the price tag is well worth it. However it is not all their fault either, it is pretty expensive for developers to build apps on Twitter.
Twitter charges them for the keys to access the API and developers basically pass the charge over to you. Twitter then pulls or caps access if your app starts to get really popular. Honestly, props to the developers who put up with this shit…
The latest version of Tweetbot is 4.5 and it is a beautifully crafted Twitter experience of the iPhone. When you use an app like this you know that thought has gone into every tiny detail unlike when you open Twitter’s app and it tends to be chaos.
Tweetbot won users over in 2011 and for a while it was described as the best way to experience Twitter. As the noose tightened harder around developers necks it became hard to use anything other than the official app. However Tweetbot 4 managed to pull out a nifty trick to get people back on side again.
One of the reasons many users kept falling back to the main app (myself included) was the way Twitter collated notifications. You can go to the notification tab and see everything that is going on right there. This is data which is not available to third party clients but Tapbots (the company which developed Tweetbot) were able to come up with their own solution.
They introduced an activity tab where notifications appeared in a stream and introduced a stats view which is a graph and view of how people are interacting with your account and content. It is a major feature that Tapbots have managed to incorporate despite being limited by the API, as a result of the limitations they had to build something to counteract the limitation they faced.
Tweetbot just works the way Twitter should work, there is no algorithm for all you algorithm haters, there is no “while you were away” or lines linking conversations together which you are not even a part of. Instagram photos display inline without issue, it syncs with the Mac app and the Mac app is not a horrendous piece of shit (Twitter’s Mac app is an absolute disaster)
It is clean and minimalistic, it takes advantage of the white space when you move between portrait and landscape views. It is the app that Twitter should have made themselves.
Where Twitter chokes developers, like Tweetbot, and why they need developers
So what are the limitations? Well, thanks to Twitter’s API there are features that Tapbots simply can’t incorporate into Tweetbot and that is not their fault, that is Twitter suffocating the developer community.
There are no polls, no integrated GIF search, no Twitter cards and Tweetbot still uses favstar.fm for favourites which is a terrible platform but the only decent solution going.
Twitter also imposes a token limit which means that the potential growth is limited. The thing is, Twitter needs developers and their applications and they know it too.
It may have taken time, in fact it was years after Twitter started to suffocate developers that Twitter realised they needed to soothe over relations and start getting them back onside again. Twitter announced new capabilities such as Fabric, a new mobile development platform.
The also launched a series of developer tools such as a mobile crash reporting tool, a tool for beta testers and a mobile analytics dashboard. Twitter needs developers because Twitter needs money and developers represent a big opportunity not only in potential revenue but also eyeballs on tweets.
Twitter can’t stand alone and segregated from their developers, they need to stand side by side because Twitter simply can’t do it alone. Developers can help the service reach new heights.
Personally what I would like to see is for Twitter to open up the API again and allow developers the freedom to have access to features such a polls, group messages ect. They also need to remove the token limit from apps which replicate the core Twitter experience.
That could help the user base grow even more if people had the ability to experience Twitter in the way which they want to experience it.
Twitter needs to stop being afraid
The reason why Twitter choked developers in the first place is because they were afraid. They were afraid a developer would out grow their own application which to be honest could well happen.
In order to maintain control they limited tokens for apps replicating the core Twitter experience and they limited the set of features for third party applications so certain things are only exclusive.
The end result is that I personally rock a dual Twitter experience. I hate the main Twitter app, it is a horrible UX and is well below the standard of third party developers. However I still need the Twitter app and they have made sure of that. There are times when I need to run a poll or when I am watching the NFL on Sunday and want to follow highlights on Twitter. For that I need to go back to the main Twitter app.
I try to keep to Tweetbot as much as I can, simply because it is the far better Twitter experience even with a hefty price tag for an app. I only open the main Twitter app when I really really need to. Twitter needs to fully embrace their developers, not just talk about it but make real steps to building a relationship with them.
They need to see the benefits of being on the developers side and from what Jack Dorsey has said over the past year, they may be getting there. Time will tell.