When Apple launched its iPhone 4S and the new iOS 5 on Oct. 4, the company also detailed its effort to bring more content to the cloud. Apple iCloud is a combination of free cloud-based services and a set of APIs that allow third-party developers to take advantage of storing and processing information in a virtual cloud-computing environment rather than just on a physical device such as the iPhone or iPad.
The initial set of free iCloud prebuilt apps provided by Apple includes iTunes in the Cloud, iTunes Match, Photo Stream, Documents in the Cloud, iCloud Backup, Application Synchronization and Newstand.
iCloud is important to developers because it gives them a platform and set of APIs from which they can easily develop cloud-based mobile services. This is Apple's first foray into cloud-based services. The company built a data center in North Carolina that cost more than $1 billion to support this new apps development environment.
iCloud thus includes both hardware (data center servers and networks) and software (prebuilt apps and APIs) that will enable tens of thousands of developers to develop new apps that provide cloud-based mobile services to users.
This also includes enterprise IT developers who can leverage cloud-based computing within local mobile apps in iOS devices such as the iPhone, iPad and iPod Touch.
iCloud is an extension of the App Store in that the developer will still build a local iOS application. However, the difference is that the developer will be able to build cloud-based services within the app using the iCloud APIs. Users have demonstrated through downloading billions of apps that local apps give a better user experience than a Web app. This is due to better control and layout of the screen, faster performance with little or no latency, and screen gestures.
To be sure, any current iPhone or iPad app can be built to access remote information. The difference with iCloud is the APIs that will make it easier for enterprise IT professionals (as well as third-party developers) to build cloud-based apps. This is not trivial. Building access to cloud-based services can often be the most difficult and time-consuming part of building an iOS application. With iOS 5, developers can integrate cloud-based services easier than before.
Apple could have focused on only providing the prebuilt iCloud apps in iOS 5. That's what it did when the iPhone was originally released in 2007. The company included only its own apps and didn't provide any APIs or the App Store that would allow developers to build third-party applications for iOS devices.
But, a year later, Apple finally opened up the App Store and issued a number of APIs to enable third parties to build applications for iOS devices. The results have been astounding as developers produced more than 500,000 applications and Apple customers have performed 10 billion downloads.
With the launch of iCloud, Apple could have focused simply on its own prebuilt apps, but Apple realized that more was to be gained if the company made it easier for developers by giving them APIs that would enable them to integrate cloud-based services. It's clear that we'll now see more cloud-based mobile services created either by developers adding more services to existing apps or creating entirely new apps that enable mobile services as the app's primary focus.