Ever since Apple introduced the iPhone, one argument that continually rears its ugly head is that the company must somehow find a way to merge its desktop and mobile operating systems into a single product. Most recently, one analyst has claimed that the folks from Cupertino are working on an "iAnywhere" operating system that would allow a special dock to turn a tablet into a full-fledged desktop computer destined for the professional-user market.
While there's something admittedly tempting about the idea of one device to rule them all, my time as a developer - as well as a user of Apple products - has convinced me that this is one road the company is in no hurry to take.
Separated at birth
I don't profess to own a better crystal ball than anyone else, and I definitely don't have Tim Cook on speed dial (if I did, I'd be asking him twice daily why my iBooks library looks like it's been taken over by zombie e-book replicants). It seems to me, however, that merging iOS and OS X into a single platform would, at best, be a very hard move to accomplish with the level of polish that Apple expects of its products. And, at worst, it would fly right in the face of everything the company has worked so hard for in the last several years.
What this kind of analysis tends to ignore is that the company's two flagship operating systems already are the same product already where it matters.
I don't mean this figuratively, the way one would say that iOS and OS X "share a common heritage." I mean, quite literally, that the underpinnings of both operating systems are based on the same software--and, in fact, that they share a large number of frameworks that can be used interchangeably on either a Mac or an iPhone.
A touch is not a click
Given that fundamental commonality, it's clear that Apple's designers and engineers made a very deliberate choice when they split iOS into a separate product. Surely, part of this choice was dictated by the fact that the original iPhone was a far less powerful computer than its desktop counterparts; this explains why some of the more advanced functionality has only made its way to the mobile platform in recent versions. The capabilities of the hardware in more recent devices have finally increased to near-desktop levels.
The main determinant, however, was the need to create a new kind of computing experience that required a completely different model of user-machine interaction: one based on touch. That's a far cry from the kind of indirect manipulation that a mouse makes possible in a desktop environment. Thus, Apple kept the parts of the operating system that could be shared across multiple platforms, and replaced those that couldn't--a best-of-both-worlds approach that ended up revolutionizing the way hundreds of millions of people use their computers everyday.
This was no accident. Look no further than the Apple TV: Often dismissed as a little more than an experiment, the company's set-top box has in its lifetime been powered by specialized versions of both OS X and iOS. (The latter is used in newer models, since, given the device's specialized nature, it doesn't require more involved, more expensive hardware.)
While the underlying operating systems are the same as those running on a Mac or an iPhone, however, Apple built a completely different user interface designed to work well with a TV remote instead of expecting users to equip themselves with a keyboard and mouse--or, perhaps, to get off their couch and start dragging their fingers across their 50-inch HDTV.
Specialization is good
The underlying idea behind all these choices is that specialization and focus help make better products--which, in turn, brings me to another reason that a unified operating system would be hard to pull off: the ecosystem.
Meet any developer who works on Apple's platforms, and you are likely to find someone who sweats every last detail of the way users interact with their apps. Needless to say, this requires a massive time investment into perfecting both functionality and user interface--an investment that often must be repeated if you want to support phones and tablets, or even phones of different sizes, even when they all nominally run the same operating system. Building a Mac version of an iOS app is only occasionally on an iOS developer's radar, and then only because it can be built--and sold--as a separate product on its own timetable, rather than as part of the iOS app itself.
But to expect Apple to suddenly throw a desktop-type interface into the same mix, and then require developers and designers to support that alongside touch-based interaction in a single package is a little ridiculous. That suggestion speaks to a particularly noxious attitude that some non-technical people seem to hold for software development, regarding it as little more than an afterthought. I can't speak for everyone else, but I don't conjure working code out of thin air by waving a wand over my keyboard. And while Apple may have the resources to attempt to build an "iAnywhere" operating system, I doubt that a large portion of the software developers who populate the company's App Store would be able to do the same with their software--particularly at the cutthroat price points that users now expect as the norm.
More equal, and more different
Apple's executives have been unusually chatty about the differences between OS X and iOS in recent months. In the company's Jobsian past, this could maybe have been taken as a signal that Cupertino was busy working on exactly those products that its CEO openly denied it was interested in.
Tim Cook, however, has proven to be much less sibylline than his predecessor and, while he's still only revealing the cards he wants us to see, he has generally chosen to be more forthcoming about what motivates his team. For example, he told the Wall Street Journal that the reason why the company doesn't sell a bigger iPhone is that the hardware components required to make one are simply not up to the company's standards--at least, not right now.
For all these reasons, it seems to me that Apple is likely to continue moving farther away from an integrated user experience. iOS and OS X will continue to share those components that are beneficial to both platforms, and grow apart where specialization results in a better user experience. Instead of a Jetsonesque dock that magically transforms tablets into desktops, I expect that Cupertino's engineers will focus on creating technologies, like more powerful hardware and better data synchronization (or, you know, synchronization that actually works) that make jumping between platforms as seamless as possible.
That heralds a future in which each device provides a perfectly-tuned mix of functionality that fulfills its role without compromise--and that sounds great to me as both a developer and a user.