iOS's integration with 3rd-party cloud services stinks. What does Apple need to do to make iOS a best-in-class cloud citizen? Or is Android too far ahead?
My colleague David Gewirtz posed an interesting question yesterday: If the entry-level iPhone doubled in price, would you still buy one?
I'd still buy one -- because as someone who covers the industry, it is essential I keep up to date on mobile technology. But I wouldn't like it. Not one bit.
However, future cost increases of the iPhone (and iPads) notwithstanding, there are other concerns I have as an end-user of Apple's mobile platform.
Much of it has to do with how well it handles the cloud. And as this column has a particular slant on enterprise, I'm talking about business cloud use, not just consumer cloud use.
As iOS currently exists, it isn't a business-worthy mobile OS. It's a highly optimized mobile OS for consumer applications first, with business applicability trailing in second place. Never mind the fact that out of the box, iOS device hardware is poorly suited to many enterprise usage scenarios.
I've complained ad nauseam about why the iOS hardware and software platform is inappropriate for this task.
As our software needs go beyond integrating with on-prem data center applications and services and leverage more and more public and private cloud services, we will need much more flexibility out of our mobile operating systems than we have today.
Right now the best cloud-integrated device OS, bar none, is Windows 10. On the PC side that means Windows 10 tablets and ultrabooks; on the mobile device side, it's Windows 10 Mobile, which runs only on the Windows Phone platform on ARM processors today.
Oh yes, I hear the snickering. Windows 10 Mobile has no market share. It has failed entirely in the marketplace. It has an uncertain future. Whether Microsoft decides to do something with it and create a premium device like a "Surface Phone" is known only by a privileged few within the company.
Market share aside, from an enterprise software development perspective, Windows 10 Mobile shares all the important APIs needed to integrate with public cloud services (be it on Azure, Amazon Web Services or Google Cloud) with its big brother, Windows 10.
What kind of public cloud services? Identity management and multi-factor authentication. Business Intelligence. Big Data. Backup and live Blob storage. Application services. Just to name a few.
Today, these types of apps are deployed on iOS as stand-alone programs. So for example, each Office 365 app installed on iOS requires its own set of account configurations, regardless of whether you use something like Azure Active Directory or Office 365 for single sign-on.
So for example, Microsoft's Cortana, which is being developed for iOS, has no way of being tapped into by other applications running on iOS unlike on Windows. It's a standalone application. So is Google Now. As is every other Google and 3rd-party app written for iOS.
Ideally, you would want Cortana and Google Now to be installed as a system service that any app in iOS can query, including Siri. Why would you want Siri to be able to query a 3rd-party system service? Good question.
Have you ever tried the Pastrami Sandwich Test on Siri? Go ahead. Ask it to find you a pastrami sandwich in New York City. There's one on every street corner, right?
Then ask Cortana and Google Now. That's why you want 3rd party decision engine providers and expert systems (like those built with IBM's Watson) built for vertical industries such as medical and financial to tap into.
While Windows 10 Mobile is probably the best equipped OS to handle the Cloud, Android isn't far behind.
Because it is open source, it's highly adaptable for integrating what is needed to connect all kinds of cloud services. Amazon has already demonstrated this with its Android-based Fire tablets and Fire TV streaming devices, which are completely cloud-dependent and rely heavily on AWS.
Google, of course, is able to leverage single sign-on for its own apps in Android but even Microsoft is able to leverage this -- by installing their own services needed for Office 365.
From a software architecture perspective, Apple designed iOS to be single user and also to not allow apps to share data or to access shared system services.
There are reasons why they chose to do this years ago: To make iOS appliance-like and to prevent software developers from monopolizing system resources.
However, business needs for mobile apps have changed dramatically since the iPhone was launched 10 years ago. Authentication providers are important, as is the ability to access common cloud services like storage.
How many of you have Office 365 subscriptions and have 1TB of OneDrive? Wouldn't it be great if you could back up all of your device data to that cloud storage? Maybe you have a lot of Azure Blob, Amazon S3 or Google Drive too. Or DropBox.
Today, because the OneDrive, Google Drive, and the Amazon apps cannot interact at the system level on iOS -- with the exception of the folders that store photos -- they can only back up their own data.
On Android, though, that's a different story. Provided those apps are given the correct system privileges, they can back up anything to whatever cloud service you want. They can also expose APIs to third parties that need to interact with their respective cloud services too.
Sure, I get that Apple sells cloud storage for iOS backup to consumers. They compete with Microsoft, Google, and Amazon. But do you really trust Apple to do that for your enterprise or your small business?
Given the various breaches, Apple has had with celebrity data in the past few years, I personally wouldn't trust them with any data of importance.
Apple is not an enterprise cloud provider. This is not where their expertise lies. It should be partnering with all three of these -- not just IBM, who is really a bit player in public cloud -- and giving them favored developer status so they can integrate their cloud services frameworks in iOS.
Should Apple continue to promote its own iCloud to end users? Totally. But continue to wall off Microsoft, Google and AWS from making iOS a best-in-class cloud citizen by not allowing them to tap into iOS at the system level? No. And this privilege should be granted to any developer that passes certain tests, not just those big three.
To pull this off, Apple is going to have to make some serious decisions about the next major revision of iOS. It will need to look at technologies like containerization and the kind of granular access control that Android 7.x and Windows 10 Mobile has today. Architectural changes need to be made, likely drastic ones which may break software compatibility with legacy apps on the App Store.
Babies will need to be thrown out with the bathwater. Steve Jobs understood the necessity of this when radical changes were needed to advance the platform. It was done for Mac OS in the mid-1990s when OS 9 outlived its usefulness, that same transformation has to occur for iOS for it to be viable in the cloud going forward.source:zdnet