Announcing Drift

28 September, 2011

I'm proud to announce the launch of Drift, a text editor for iPad I've made with Devin Chalmers. Drift is a simple text editor that stores your documents as GitHub Gists so that they're always backed up and easily shared. Drift also makes it simple to collaborate with other GitHub users on anything from a TODO list to an essay. You can search for gists created by other Github users, create your own copy with your own changes, and then share a link to your version. Plus since all gists are git repos, you can always browse your history of changes to see and even restore old versions. Or you can use the app completely anonymously without ever creating a Github account and Drift will remember all of your gist URLs for you. We hope that its great for active Github users and simple for everyone.

Drift is available in the App Store now for $1.99. We'd love to hear your feedback on it.

I built the original prototype for a desktop version of Drift using MacRuby back in the summer of 2009. Then, last summer, Devin and I starting talking about reviving the project. In a startling short time, Devin had built an iPad version and we'd won an honorable mention at iPadDevCamp 2010. Around the start of this year we began working on cleaning Drift up for submission to the App Store. We commissioned a logo from the excellent Rune Madsen and we did a few rounds of UI polishing. Over the summer we deemed Drift ready to go and submitted it to the App Store.

It was rejected. Repeatedly. Through five rounds of resubmission over more than two months. Over the course of these months we exchanged extensive phone calls and repeated emails with Apple's App Store appeals board to try to discover why they were rejecting Drift. We eventually understood their full reasoning and were able to alter our app to gain approval. What we learned in the process will be relevant to many other app developers, especially those interested in building on top of existing web service APIs. Devin has written up a great comprehensive post explaining the situation: Stuck in the Middle with Users: Apple, Apps, Appeals, & Appeasement: the Story of Drift. I highly recommend you read the whole thing, but here's the gist:

App Store guideline 11.13 requires that any purchases initiated from within an app go through Apple's in-app purchasing mechanism. Apps are forbidden from linking out to an external website for the user to make a "purchases or subscription". Drift was rejected because Apple interpreted our links to Github.com as an upsell to the paying Github service. This is true even though a free Github account is perfectly adequate for all of the API features used in Drift.

And here's the disturbing take away message for other app developers: any link out to an external site that has a pay service can potentially be rejected under the rubric of 11.13. This could prevent the creation of a lot of apps. Mashing up APIs and building clever clients is at the heart of contemporary programming culture. As Devin puts it:

One of the great App Store gold rushes was Twitter clients. What makes our undertaking, a Gist client, different from theirs? Well, largely it's that GitHub has a business model, while Twitter doesn't. Think of that: if Twitter charged a buck a month for their service, instead of aggregating your sentiments to sell to OmniCom and co. to turn into failed viral marketing campaigns, Loren Brichter might still be quietly churning out the most polished iPhone apps in the world; people might meet Craig Hockenberry and exclaim "oh, the Icon Factory! It's so cool to meet a graphic designer at WWDC."