I am a big lover of jazz and this past weekend the KW Symphony Orchestra performed a tribute to Frank Sinatra. As I watched the orchestra play I kept looking over at the bass section. The three of them would spend a large portion of the song sitting idle, only to ready themselves once or twice during the piece to play a fill or accentuate a note. Although their contribution to the song as a whole was small, it is without question that they helped create something great.
There is a growing trend in today’s mobile space, some would call this trend frustrating, even infuriating. That trend is the abundance of mobile SDK’s (Software Development Kits) out there today, and it seems like every new platform and runtime provider is rushing to put out their own SDK. SDKs are great if you’re building native applications and a certain tool set is required to build and deliver your application to your target platform. However, the world of mobile development is changing. Today, building mobile applications does not necessarily mean that we have to build native applications.
Through my computer science university experience, my need to download SDK’s was limited. Much of our work was done in Java and so the biggest requirement was to download and install Eclipse and the Java JDK. I was fortunate to be able to take a course in iOS development at university as well (one of the best courses I took by far). The setup experience for iOS development is similarly simple. Just download and install the iOS SDK. XCode and all the other tools are automatically configured and prepared for you. You just open XCode and start coding. I found these setup experiences to be generally quick and painless. I recently needed to test a PhoneGap application in an Android context. I had never done so before and I, perhaps naively, expected the setup to do so to be equally as painless as I had experienced before. Wow was I wrong.