Mary-Jo Foley has been digging into some secret Microsoft projects and speculates that one of them may be the key to Microsoft’s answer to the iPad. Hint: it’s kind of like what Apple did for the iPhone OS.
Her focus is on Menlo, a project that supposedly will make Windows NT, the desktop-based x86 operating system, work on ARM-based handhelds and other low-powered mobile devices, such as the recent line of tablets. Nothing definitive but it appears that Menlo is mobile-related. Her conclusion, however, makes me wonder if she needs to spend more time understanding the competition.
Here’s my thinking: If Microsoft replaced the CE kernel with an NT one, Microsoft might have a more compelling “write once/run anywhere story.” What if you could make some relatively minor tweaks to your existing Windows client app to get them to run on a Menlo-based Windows Phone or Menlo-based tablet/slate? (It would be the reverse of what Apple is doing, by enabling developers to move their iPhone apps to the iPad with relatively little work.)
While that would be a lovely scenario, it’s not the reverse of what Apple is doing. In fact, it’s pretty much what they’ve been doing.
iPhone apps are actually easy to port to the iPad. Making a universal app has been shown to be a matter of changing a metadata value. Note, that just allows an iPhone app to run on an iPad without pixel doubling (and presumably vice versa); it doesn’t mean the app looks good or runs well on both platforms. Reworking the UI for the different aspect ratios is still necessary in most cases, but that would be just as true for applications intended to run well with either mouse-and-keyboard or touchscreen.
It should also be noted that iPhone apps have the potential to run on Mac. Per a tutorial on running iPhone apps on a Mac from The Gadgets:
Apple provides an iPhone simulator with the iPhone SDK for the developers to let them run their apps on their Macs. Unfortunately, XCode compiles completely different object code for the iPhone simulator and for the iPhone. Only the device code for ARM CPUs is uploaded to the App Store.
Basically, you can’t run iPhone apps on Mac because of code compilation and DRM restrictions. The code compilation is necessary to get the apps to work with an ARM-based CPU, but the raw code can run on Mac. As for DRM, I’m guessing Apple could grant themselves a license to run iPhone apps on Mac.
More importantly, stripping down a desktop OS to run on mobile devices is what Apple did for the iPhone. The iPhone, if you’ll recall, was originally billed as running Mac OS X. They eventually dropped the “Mac” part of the name and further distinguished it by calling it the “iPhone OS” when they opened it to third-party apps. Regardless of those changes, its origin as a stripped down version of Mac OS X remains. Apple upscaled the iPhone OS for the iPad, but the iPhone OS is itself scaled down from Mac OS X.
So Apple already did with their OS family what Microsoft is supposedly doing with Menlo? Pretty much, but that’s not a bad thing. For one, the approach is a proven success. Also, there’s no reason Microsoft can’t outdo what Apple has done. While Apple’s system has the potential to create apps that can run on all their devices, they haven’t pursued that path. If Menlo is designed with that intent from the ground up, Microsoft could outshine their opponent here.
Their real enemy, however, is time. As Mary-Jo states, “Because Microsoft has a far bigger pool of Windows apps than Windows Mobile/Windows Phone apps, it would make sense for the Redmondians to be trying to find a way to enable that base of business/consumer apps to run on Windows-centric phones and tablets.” I agree and add that the reverse is true for the Cupertinoans at Apple. Eventually, they will make the App Store part of their Mac strategy. If Apple goes universal with their apps before Microsoft does, their time to outshine will have passed.