Wednesday, May 11, 2011

We're the "E" in iOS: Open source projects fill Enterprise holes in Xcode

A long, long time ago, just as the internet bubble was really getting going, many pundits were talking about “internet time” to describe the radical time compression brought about by the web. Software release cycles were suddenly occurring over periods of just a few months rather than years, and technology platforms were similarly revving over just a few years whereas previously it had literally taken decades for enterprise IT to make any major changes in how they built software.

If internet time was fast, what are we to make of “mobile time”? The big bang of mobile time, the release of the first iPhone, was just four years ago. Enterprises certainly needed to move quickly to keep up with internet time, but at roughly the same four-year mark, most enterprises were doing little more than creating static websites. There has been no comparable gestation period for mobile development since Apple was nice enough to skip over infancy and adolescence and give birth on day one to fully formed, mature applications employing radically new user interfaces.

While iPhone applications have been pretty “magical” since day one, enterprise-class tool support for iOS app development has been quite a bit slower in coming. It’s hard to find many enterprise developers having anything nice to say about Apple’s Xcode IDE, which is currently the only serious game in town for developing iOS apps. Try the Google search Xcode +”piece of crap” and you’ll be treated to more than 40,000 results. There are of course many similar but more colorful searches you can try.

Back in the days of internet time, Sun created a virtually unusable IDE called Java Workshop. Fortunately for internet time, other companies including IBM, Borland, and Symantec created competing IDE’s and Java development has enjoyed robust tool support ever since. The closed nature of iOS however has understandably dampened the enthusiasm anybody outside of Apple might have for jumping into the nascent iOS development ecosystem. After all, Apple can at any time change the iOS platform in such a way as to make third-party tools incompatible, similar to the way in which iTunes was continually revved to maintain incompatibility with the Palm Pre mobile phone.

So, since the usual commercial suspects have too much business sense to enter into the iOS development ecosystem, it’s left up to those of us with little or no business sense – I am of course referring to open source software developers – to fill the gap!