When queried about Windows Phone 8 upgrades for existing handsets both Microsoft and Nokia officials have deflected the question with comments about supporting existing customers and keeping their experience “fresh”. The most direct interpretation of these statements is that Windows Phone 8 is indeed coming to existing handsets, but that contradicts what people with good sources are hearing. So what is the truth? Well, we won’t know until (at least) next month. But I’ve been mulling a different reading of the tea leaves and I’m not the only one. Makram Daou mentions a similar option to what I’m about to describe. And a commenter on an earlier entry in my blog suggested it as well. What if there are two editions of Windows Phone 8 (WP8), with two different kernels?
I believe that the development methodology for WP8 included keeping it running on both the CE and NT-based kernels in case delays in Windows 8 itself forced the Windows Phone team to (temporarily) abandon the NT-based platform in order to meet their 2012 deliverable commitments. And my assumption had been that both to reduce internal testing requirements, and avoid platform fragmentation, that once the NT-based platform was green lighted for shipment Microsoft would stop work on the CE-based platform. But what if I’m wrong? What if Microsoft concluded that the cost of shipping both CE-based and NT-based variants was low enough for the benefits? Then Microsoft could ship a Windows Phone 8 “Standard” based on CE and a Windows Phone 8 “Pro” based on NT. So let’s explore what this world would look like, what are the benefits of this approach, and what are the (significant) downsides and their mitigations.
Microsoft is getting a number of benefits by going with the NT kernel, both in terms of new capabilities for Windows Phone and in terms of compatibility with Windows 8. Take multi-core support as an example of a capability that comes with NT. This is important going forward, but is completely meaningless for existing phones (and for the low-end phones that have become a big strategic move as of late). In fact, many of the new capabilities that come with the NT kernel are of no or questionable value for existing devices. Can you support Windows 8’s Secure Boot Path on existing WP devices? Can you support Windows 8’s Drive Encryption on existing devices? In both cases the answer may be “not exactly”, meaning that Windows Phone would need unique implementations rather than taking advantage of the work Windows 8 has done to support ARM. How about Windows 8 application compatibility? One of the major expectations is that Windows Phone 8 will bring in Windows 8’s Metro application model, in addition to retaining the Silverlight and XNA application models. What if Metro doesn’t support the existing 480x800 screen resolution? That brings a form of fragmentation that is unrelated to the kernel switch itself. You can write a Silverlight Windows Phone application that runs on all devices, or a Metro app that runs only on newer devices (and perhaps can support both phones and Windows 8 tablets rather easily). The bottom line here is that there are only a small number of features that are tied to the NT kernel that existing customers would care about. And the main concern is really not about the kernel itself, but around app model fragmentation.
Now let’s briefly talk about the business. Microsoft originally was focused on the high-end of the Smartphone market, and specifically on Consumers. Requirements for Enterprise users were deferred. Nokia apparently convinced Microsoft that going after the low-end was critical to capture the vast untapped markets in places like China (where Windows Phone reportedly very quickly surpassed the iPhone in sales). Microsoft tweaked Windows Phone 7.5 to evolve it (“Tango”) to better support low-end devices. There have been questions about if the NT kernel would make support for low-end devices more difficult. I think the answer is maybe, but even if the NT kernel isn’t an issue there are business questions at play here. The low-end devices will eschew hardware configurations that the NT-based Windows Phone 8 is required to support (e.g., multi-core). The low-end devices can’t take advantage of the better multi-tasking that might come along with the NT-based WP8. The low-end devices are too cost sensitive for the higher resolution screens that Metro may require. The low-end devices are very consumer oriented, they aren’t going to be sold to people who need features like VPN and full-drive encryption. And the manufacturers of low-end devices want Windows Phone to be even cheaper than it is today. From a business standpoint this screams out for two editions of Windows Phone!
Microsoft could offer OEMs a Standard Edition which is Windows Phone 8 with the CE kernel and a Pro Edition with the NT kernel. Features needed for high-end hardware and enterprise use would be in the Pro Edition. The CE-based edition would be priced at about what Microsoft is charging OEMs as patent royalties for their Android devices (plus the cost of codecs that Microsoft includes but that Android requires the OEM to license separately) so that there is no cost difference to the OEM of using Android vs Windows Phone. The Pro edition would be priced higher, but still low enough that the OEM can compete with both the iPhone and high-end Android devices. Standard would likely have other restrictions, perhaps not supporting more than 512MB of RAM and 16GB of Flash, so that OEMs wouldn’t be tempted to use it on higher-end devices. And I picked those two numbers for a specific reason, because Standard Edition would also be the upgrade path for existing Windows Phone 7.5 devices, which largely match those specs.
The biggest problem with this strategy is fragmentation, but I think fragmentation is unavoidable (as technology marches on). Even Apple has fragmented the IOS world and that fragmentation is likely to grow over time. I wouldn’t be surprised if IOS 6 drops support for the iPhone 3GS, for example, as they move away from non-Retina Display support. The key for Microsoft is not to avoid fragmentation completely, it is to control fragmentation. And the biggest issue they appear to be facing is the possible fragmentation that comes with adding a Metro app model.
There appears to be quite a chasm in the smartphone world. There are users who install dozens of apps on their smartphone and there are users who install 0-9 (and probably are concentrated in the 0-3 range). The first group cares a lot about the number of apps available and moreover which specific apps. The latter group does not. My own anecdotal evidence is that the latter group is growing much faster than the former group. And guess what, the lower-end the phone the more likely people are in the 0-9 apps group. This makes me think that the application fragmentation problem that Metro could introduce might not be that big of an issue. Yes developers who want to specifically target the low-end devices would have to stick with the existing Silverlight app model, but on the other hand the “long tail” would not necessarily want to focus on a user base that doesn’t buy or install apps.
Something else to consider, under the scenario I describe here Microsoft would then shift completely to NT in Windows Phone 9. Wouldn’t it still have the upgrade problem? Yes and No! Technically yes, however the evidence from the Android world suggests that low-end Windows Phone users really wouldn’t care about missing the upgrade. And Generation 1/2/2.5 devices will be obsolete, not to mention their owners having seen the handwriting on the wall, will either have moved to a Generation 3+ device or be ready to do so. Further, by that point Windows Phone is likely to be well established unlike today’s environment where it is quite fragile. So it just might be that introducing version fragmentation at that point is a tolerable thing to do. Particularly since it would actually eliminate long-term fragmentation!
I know this is all speculation, but look at how it takes all the conflicting rumors out there and makes sense out of them. And how it would seem to meet Microsoft’s business need to compete with an almost free Android at the low-end while having a sensible business model overall. Yes having multiple editions sucks, but it is a controlled form of fragmentation (vs the uncontrolled form in the Android world).
Honestly I’ll be surprised if the scenario I just described turns out to be the real one. But to me the Windows Phone business is facing a Kobayashi Maru type of problem. This scenario is one that could address it.