Apple’s Multiple OS Family Used to Be a Good Idea

When all we had was Mac OS X (now macOS), our Mac life was simple on Intel-based Macs. Then came iOS with Cocoa Touch, a derivative of macOS for touch devices using ARM CPUs. That seemed so very sensible at the time. Then, of course, came tvOS and watchOS which means Apple has even more code bases to maintain. While perhaps only a mild burden, the biggest problem may be the future development of Apple devices.

When I think about the evolution of Apple products, I think about the built-in walls that Apple has created that, in hindsight, were both brilliant and simultaneously self-limiting. I started thinking about this when Microsoft announced the Surface Studio. This is basically a 28-inch iPad that runs Windows apps, including, touch-sensitive Windows apps. What struck me was how Microsoft didn’t need to write a new OS for this device. That is, by making Windows 10 able to run both legacy Windows apps and newer touch-sensitive apps, Microsoft took the operating system out of the equation for the design of new, exciting (Intel) hardware.

Apple, on the other hand, is in a situation where legacy macOS apps run on intel and are not touch enabled. iOS apps run on ARM and are touch enabled. Moreover, iOS was designed from the get go to be more secure. For example, customers may be okay with running anti-virus software on their Macs, but they won’t put up with it on an iPad. The suppression of a visible file system, extensive sandboxing, and other technical approaches make the iPad inherently more secure. That leaves a bad taste in one’s mouth for the future of the Mac.

What that’s leading us to is a general, uneasy feeling that that Macs, running as they do on those power hungry Intel CPUs, are becoming old-fashioned and potentially obsolete. Apple seems much more enthusiastic about the iOS/iPad/mobility future because, well, it has to. Its own OS architecture roadmap more or less dictates that.

Microsoft’s Gamble

Microsoft started with the idea that its Surface tablets would run on Intel. Well, yes, there was that disastrous, mildly mad experiment with the Surface RT and Windows RT. This was a Surface tablet that used an ARM processor, a special version of Windows, and a custom version of Office for ARM. It greatly confused customers because they thought they’d be able to run their Intel/X86 binaries on it, and they could not. It was a complete failure and eventually dropped. Microsoft learned from that.

On the other hand, early versions of the Surface and (now) Surface Pro tablet suffered from heat and short battery life compared to Apple’s iPads which were thin, cool, and had great battery life. Even so, Microsoft stuck with its vision for Intel commonality across all its devices, knowing that technology advances would eventually enable its vision.

Part of that vision was being tied down by the weight of all those legacy Windows apps, but the positive thing that came out of it was the opportunity to have a family of devices, all of which could run a single core Windows version and all of which could run legacy apps. In other words, there’s no such concept as the “PC” dying of old age like the Mac.

What essentially remains is the problem of presenting Windows apps, of varying capabilities on devices of varying display sizes. That’s a relatively more simple task (I surmise) than, say, making legacy macOS apps run on a giant, 27-inch iOS-based iPad.

The Windows Shell is essentially the Windows environment we all know and love. In layman’s terms, it gives us access to system elements and objects necessary for running applications, and houses features such as the Taskbar, Start Menu, Desktop and more. Currently, the Windows Shell is different depending on the version of Windows 10 you’re using.

…

Over the next few Windows 10 releases however, Microsoft will be bringing each of these device categories under one Windows Shell, making for a true universal Windows 10 experience no matter what device you’re using. Internally referred to as “Composable Shell” or “CSHELL”, this new Windows Shell will be able to scale in real-time between all types of devices, similarly to how Continuum currently works between desktop mode and tablet mode, only this time it’ll scale across Xbox and Mobile as well.

No doubt, this staggering vision is part of the Satya Nadella era.

Now, not everthing is as simple as it sounds. Microsoft has a lot of work to do to make this happen and work right. Microsoft may still be pondering the use of ARM on some small devices. There’s just no getting around the power efficiency of ARM.

But the core of the matter is that Microsoft has taken a decidedly different technical path than Apple. The company is gambling that one basic OS, Windows, can be made to run on different kinds of devices (like the Xbox, PCs, tablets) and different display sizes (Surface Studio, Surface Book).

Apple, on the other hand, finds itself writing new OSes for each new device, based on its functionality and size. While iOS was a brilliant and necessary move when it was conceived, it may now be forcing Apple’s hand in a way that makes customers uneasy about the future of both iPads and Mac. To ease those fears, Apple finds itself about the business of trying, with each new OS release, to make these devices work and communicate with each other better. Is that elegance or a corrupted OS roadmap? TBD.

Time will tell which company’s vision is superior. The two approaches may, in fact, turn out to be technically equivalent. As a physicist might say, the “dual” of each other. (As in wave-particle duality.) Even so, I tend to feel that Microsoft’s vision, one they’ve persevered with as technology has evolved, is paying off.

It seems crisp and coherent. And I like it personally. But that’s just me, and time will tell.

I’ve been saying that Apple needs to split padOS off from phoneOS. But you make a good case. Maybe Apple needs to have ONE OS To Rule Them All with customized interfaces for each device. Food for thought. Thanks.

Microsoft has chosen to scale down Windows from the PC to create their universal system, but what if Apple decided to scale up iOS from the iPhone to do the same thing? I bet this would be easier to do than to modify the desktop OS–easier to add file access, and other things. Plus they would have the added benefit that it runs just great on ARM already. It would’t be the work of a day or even year, but to my way of thinking, for Apple, this would be the better solution than going the Windows route of scaling down the MacOS.

Personally, IOS as is just isn’t going to cut it, and power users need access to the system. I am not a millennial and I do not devote my time to social networks or emoji. Incidentally, in such a use case scenario it’s really only Apple that is profiting anyway, the rest of us are left hung out to dry with our real work. To that end as well, older millennials are rapidly learning that their dope mobile skills are not sufficient to function in a real, professional environment. Apple is chasing the money all the way to the lowest common denominator in service of board members and shareholders, just like so many other modern companies. Longevity does not lie in that direction. (Just basic good sense. You don’t chase fads. This is where my faith in Apple management seriously wavers). They really need to start taking professionals seriously again if they don’t want to end up being the world’s greatest novelty factory. Seriously. I could give two sh**s if they are the hippest with the kids or the most profitable, just give us tools that are useful. if they aren’t going to do that, than they need stop it with the half-assery and just call it dead so we can move on.

There certainly are differences in the various UIs but the amount of commonality underneath is quite high, as with Windows. Apple is NOT writing “a new OS” for each device, far from it.

All of the OS and all of the Frameworks can be built for both Intel and ARM CPUs so building a touchscreen Mac wouldn’t be hard – Apple would just have to include those Frameworks in the [software] build. Of course, the apps themselves would need some amount of change but that wouldn’t be gigantic. Some of the on-screen controls might have to change, but this is no different to what MS has had to do.

The issue of the filesystem is one of perception. The standard Unix-y filesystem of macOS is present on iOS, it’s just hidden. Because there’s only one “user”, there’s no home directory and apps store their files in the app’s own directory. But that’s all under the control of the API calls that deal with opening and saving files. If Apple wanted to create a multi-user “iPad Super-Pro” with multiple users, apps wouldn’t notice the difference. It would all “just work”.

Microsoft can do this because they don’t have a viable mobile phone division. If they tried to translate the Windows experience to a phone, it wouldn’t work.

You bring up salient points about the limitations Apple has put themselves under. I think Apple is going to move macOS to ARM in a few years as ARM processors become more powerful and you’ll start to see a more seamless experience. Mobile is where the money is at. But as Steve Jobs says, there will always be a need for trucks.

I’ve thought about this a lot in the past year or so. When tablets first came out it seemed a given they would run a stripped down OS. When Surface came out running Windows, I laughed because they were awful in part because they tried to run Windows. As time has gone on, that has changed. I love my iPhone but I want to scream if I try to, say, order a pizza and enter coupons and so on. I usually give up and use my laptop. Conversely, I am often able to do so on an iPad. It really seems to me that IOS is different on an iPad than a phone. But don’t take away Mac OS and make us use IOS. My work computer will going he trash. I like the idea of a phone OS and a more rich OS for iPads and computers.

Microsoft’s vision for a single OS with an adaptable UI is compelling. Alas, the devil is in the details. Based upon anecdotal evidence from various bloggers, the user experience on the Surface Studio is far from compelling in real work use. Furthermore, I don’t think anyone wants the baggage of a full desktop operating system on their mobile device.

That said, Apple’s current solution has a few holes, most notably where the iPad is concerned. In my opinion, Apple should double down on its current approach by consolidating the non-UI code of all of its operating systems and apps into a single code base and then providing a custom UI for each device family. The logical extension of this approach would be to create padOS, an iPad specific fork of iOS which bridges the gap between iOS and macOS. This OS would provide the low UI latency of iOS for optimum touch response, but would add full keyboar, /mouse, and trackpad support. Access to the local file system, albeit more constrained than in macOS, is also a must.

@shammermulji made the point I was going to make, but there’s another, and it applies to all vertical touchscreens whether 27inch monitors or 8 inch touchscreens in cars.

Ergonomics.

If you are sitting down, your fingertips are horizontal, thats how we are made so drawing on a horizontal surface makes sense.

Reaching up, and forwards to use touch on a vertical screen doesn’t, its tiring and there’s no precision and in a car, trying to do this could be fatal because you cannot look at a screen in the centre of the car and drive without running the risk of having an accident. OK if you have an autonomous vehicle this doesn’t apply.

But vertical still sucks, which is why a lot of Mercedes cars have horizontal touch controls a bit like an Apple Mouse or Touchpad, that works and you don’t NEED to look at your fingers, only the resultant movement on the screen.

One core O/S, GUI’s appropriate to the application, even ones that aren’t available yet – like iOS for Car.

Apple understands the UI and Ergonomics, Microsoft are STILL learning, otherwise we wouldn’t have a white/grey/platinum white Microsoft Office UI where if you have less than perfect eyesight the contrast is hopeless.

If there’s one universal truth in engineering, it’s that every time someone tries to make something universal and not task focused, the end result is always too big, too heavy, and less reliable than designs that satisfy one focused set of requirements. In the case of computing device OSes, that would be bloated, power hungry and buggy. Another truth is that in a window of time where a technology is not obsolete, by the time you invent, develop, and debug the complex universal object, by the time you have all the bugs worked out, it’s nearly obsolete.