This post took me a long time as I was thinking about the right perspective to approach this new service—iCloud. I consider it one of they most mysterious of the three products announced at the keynote.
All the time was spent demonstrating and explaining what iCloud is and what it can do for end-users from Apple’s perspective, not much was mentioned about developers and the potential applications of the technology available to 3rd party developers.
However, in recent days, some functionality of the APIs offered to developers under the Non-disclosure Agreement (NDA) has been leaked. According to an article from This is My Next, 3 key APIs are offered for 3rd party developers for integration into their applications. The article further postulates that one of them offers the ability for applications to save and restore preference “key-pairs”, and this offers a potential for applications to save state across different devices.
An article on Engadget further elaborates on the concept of the “continuous client”. Imagine a time where you can be messaging, surfing the web and listening to music on your desktop machine, and then decide to continue doing exactly that somewhere else on a laptop. The “continuous client” allows you to do exactly that by saving and synchronising application state across devices. You could just turn on your laptop and continue exactly where you’d left off on the desktop.
This is actually inline with the vision that Steve Jobs articulated in the closing WWDC keynote of 1997. Looking at the advances of Lion (with autosave and resume), iOS 5 with very tight coupling with iCloud (already with autosave and resume), and finally iCloud being offered for free to all users, it looks like the situation that I’ve mentioned above might be a reality really soon.
Just recently, ChromeBooks, powered by Chrome OS, were released to the public. Google has a slightly different view from Apple regarding the concept of cloud. Google wants applications to be powered from the cloud through the context of the browser, anywhere. Apple wants the cloud to be the enabler of various applications through the context of their hardware. The difference is in the viewport. Native OS chrome versus browser-based chrome.
I believe that native chrome UI will prevail in the long run as the browser rendering engine is still limited. Only a subset of applications can be used with a browser chrome UI without difficulty. Just recall when Apple first launched the original iPhone for sale, users were all up in arms when Steve Jobs mentioned that there will be no 3rd-party native applications available and encouraged developers to write web-applications. Hatred towards browser-based web-applications were very visible. JailBreakers raced to crack the iPhone wide-open, bringing in plenty of unauthorised, but very useful, 3rd party applications.
Given that short history, why would users change their mind and embrace the ChromeOS philosophy? Users want “continuous client” across devices, but not a consistent yet unoptimised viewport of their applications.
To conclude my post, here’s an article by kicking bear on how an innocent Push Notifications Service launched by Apple in 2008 has slowly but surely, morphed silently to what iCloud is when launched.
With the release of iCloud, Apple is declaring war against Google, proper.