Wednesday, March 18, 2009

New Breed of Applications On The Way

At the iPhone 3.0 Media Event today, Apple announced a new SDK. Not everyone is technical here so let’s get on the same page. SDK stands for Software Development Kit. It’s a set of development tools utilized by software developers to develop applications for a particular platform (i.e. the iPhone). During today’s media event, Apple announced a new SDK with over 1,000 APIs. What’s an API you ask? The Application Programming Interface exposes the nuts and bolts of application development to developers. OK, I am simplifying this a little bit. What matters here is that Apple is extending the capabilities of what iPhone developers can bring to the market.

Here’s a glimpse of some of the new features available to the development community:

Push Notification: Apple has long been criticized for not allowing applications to run in the background. When you hit the Home key to access another application you’ve essentially closed the application you were working in. This was all done in the spirit of addressing performance issues caused by applications running on Smartphones in the “background” (lingo for not the application you’re currently using). According to Apple, based on their test of a 3rd party IM client tested on multiple non Apple devices, stand by time for those devices dropped by 80%. Apple’s battery life with 3G is already bad enough. The last thing Apple wants is for you to have 20 applications running in the background as your phone battery quickly fades away. The downside to having these applications not running in the background is that you’re unable to receive alerts or messages from the application. If you use a chat application and someone IMs you, you wouldn’t know it until you used the application. Apple’s solution is to provide a notification service so application vendors could notify Apple of application alerts. Apple in return would notify your device. Apple acknowledged today they “were late on this one”. They expected to have this available by the end of 2008, but it didn’t happen. Based on developer feedback they had to “completely rearchitect the server infrastructure to make it really scalable”. The jury is out on if Apple is doing the right thing here. I believe Apple is genuinely interested in providing the best experience possible and restricting background applications is, arguably, a wise choice. There are applications that are not alert or message based that still won’t be able to run in the background. There should be an option for users to allow this.

Peer to peer device connectivity: Developers can write iPhone and Touch applications that can interact with other devices over Bluetooth using built in auto discovery features. Developers can focus on writing their application while Apple handles the discovery, connectivity and state management of other devices. Ideal for games, document sharing, etc…

Accessories: The iPhone and Touch will be able to communicate with devices external to itself. At the media event today, there were examples of how this might be used. In one case, an iPhones could control an external speaker via a phone based equalizer and a blood pressure device provided info to the iPhone via an application, Who knows…heart monitors could be next. Very cool.

Maps: Two areas of interest here. Applications can finally embed maps in to their applications. In the past, Maps had to load up separately. There was a real disconnect between the mapping and the application. Apple is also opening up the “core location” ability for turn by turn direction applications. This explains why we’ve not seen these applications to date through the App Store. Turn by turn vendors will use their own maps due to license restrictions with Google maps.

App Store Enhancements: While of little interest to most users, Apple will provide applications with more flexibility for intra application revenue streams. For example, you could have a game you purchase with five levels. If you want to purchase more you can buy them within the application instead of an additional application. Another example, perhaps you wanted an Ebook. Today, you would need to download a new application for each book. With the new App Purchase APIs, a single application would allow purchases from within the application. Everything would connect to the App Store to leverage Apple’s infrastructure for downloading, credit card processing, etc. Not sexy to the end user, but will improve certain experiences with applications.

The SDK will bring a next generation of applications that will impress. We’re on the verge of a new breed of applications we’ve yet to see.

No comments:

Post a Comment