Sticking Stuff Together

Most Startups Will “Build” Their Solutions By Sticking Together Pre-Existing Components

Yesterday, I started noodling some code for my little “personalized trends on Twitter” idea [See here, and here for previous posts on this topic]. I’m not in love with this idea yet, but I like that i) It can be simple at the start; and ii) It has the potential to grow, for instance by embracing and simplifying other forms of communication, including email.

I thought I’d start by doing it as a prototype iPhone or iPad app.

Not having started a clean-slate new project for a while, there’s a lot I don’t know here. I have just a week or two of iPhone programming knowledge. And I have never used the Twitter API.

When I dig into Twitter, I quickly found that there’s more “new stuff”  – new to me, anyway. Twitter uses “oauth” – open authentication – to enable apps to have access; and the Twitter oauth process is quite complex (I always love when technical documentation includes a “Phew!” at the end). Twitter’s main API is JSON (JavaScript Object Notation, text-based structured-data, like a simpler XML) based. Both oauth and JSON are new to me.

Plus of course the details of the Twitter API is completely unfamiliar.

How to proceed? Turns out, it’s about sticking stuff together.

There is a free objectiveC library, MGTwitter, for iPad/iOS/MAC, that hides most of the complexity of the Twitter API.

OK, but MGTwitter example code doesn’t really use oauth, it uses xauth, which is less satisfactory for various reasons.

Ah – but another free objectiveC library, oauthconsumer, will handle most of the hard stuff – like assembling SHA1 signatures – for oauth.

Another library handles the JSON processing.

Some careful Googling shows up the Apple documentation for popping open a web-page, and the Twitter documentation explains how to open the correct page for app authorization as part of the oauth flow.

Amazingly quickly, considering the potential complexity and opportunities for getting stuck, the app can authenticate and start pulling interesting data from Twitter.

What’s the lesson? The set of available third-party technologies that are freely available has become remarkably rich and broad. There is a whole set of software startup ideas which can be implemented by sticking existing technologies and APIs together in creative ways. The “skill” may not be the ability to go deep on a narrowly defined problem, so much as to elegantly conjoin existing components to create something worthwhile.

“Narrow and deep” startups still exist – for example On2, acquired by Google for their video encoding technology (WebM) – but they seem likely to be the exception.

Back to the code now…


Comments Off on Sticking Stuff Together

Filed under Tech

Comments are closed.