They've finally done it. Previous Windows consumer electronics products have run on special versions of Windows with special kernels and different APIs, meaning there was no software compatibility with desktop Windows. But Windows Phone 8, revealed last week by Microsoft at an event in San Francisco, is actually running Windows.
WP8 is based on a substantial common-code base with Windows 8, the desktop version. The implications are immense: Because it's Windows, a lot of Windows software will port with minimal work to Windows Phone. Microsoft produced several such examples at the event, the Windows Phone Summit. See the video below.
As many suspected, Windows Phone 7 turns out to be a bridge from the old Windows Mobile to the real Windows Phone. WP7 was based on the Windows CE kernel, stylistically similar to Windows, but nowhere near compatible. All programming on WP7 is done in the .NET Framework through Silverlight, Microsoft's failed Flash-like environment. The good news is that all WP7 programs will run on WP8. Why shouldn't they? After all, .NET runs on Windows, and WP8 is Windows.
But almost nobody's going to want to write WP7 apps anymore--which, by the by, is a short-term problem for Microsoft and a big short-term problem for Nokia and other handset makers with WP7 apps phones. WP8, like Windows of course, supports native code apps. The whole history of the PC business shows that developers far prefer native apps because they're faster, have access to standard high- and low-level APIs, and are better optimized to the hardware platform. In fact, it gets better than native code. Microsoft supports a significant set of DirectX APIs on WP8. This is no surprise because DirectX is a Windows feature and WP8 is Windows.
Microsoft trotted out some game developers and developers of gaming kits to talk about how porting code from desktop Windows to WP8 is fairly easy and quick. Obviously, game developers need to adjust to the platform's relatively small screen and touch interface, but they'll be doing that for Windows tablets already. The differences between a game version for a Windows 8 tablet and a WP8 device should be small.
Another interesting prospect for Windows Phone 8 is the escape from the resolution/aspect ratio prison of phones. One odd characteristic of smart phones that has always confused me is the rigidity of screen resolutions and aspect ratios. On the iPhone there is exactly one of each. WP8 will support three resolutions, including the new 1280 x 768 and 1280 x 720, and two slightly different aspect ratios. Why are they so limited? It's because many old and dumb apps use static bitmaps and would look like crap if the system had to squeeze and stretch them to fit the current display. But WP8 provides for and encourages vector graphics; you can envision a time when handset makers will have more freedom in designing displays because it won't matter. Things will work correctly on any size --just like on Windows.
Indeed, the compatibility with Windows goes right down to the device driver layer. There is a single hardware driver model across all Windows platforms. Device drivers probably aren't much of an issue in phones, but it's there at times.
For years we have had put up with the fact that smart phones exist outside of established networks and management systems and need all new code. Some people would say this is a good thing, but compatibility is also a good thing. If you're a business of any size, Windows Phone 8 is going to be very tempting, and if you have to bribe your users to adopt it you might be making a wise investment.