I had a phone call Monday with Parimal Deshpande, senior product manager for Windows Presentation Foundation and Microsoft User Experience to talk about Microsoft's overall user experience (UX) strategy and also a little bit about WPF XAML Browser Application (XBAP), a technology I labeled as a competitor to Adobe's Flex. After talking with Parimal, I feel like I have a good idea about where all of Microsoft's products fit into their overall UX/RIA strategy. It is clear that at Microsoft, there is a wide range of UX platform technologies (including tools such as Visual Studio and Microsoft Expression) depending on whether you are looking for richness versus reach. In addition, there is a lot of interoperability between technologies. For instance, Windows Presentation Foundation Everywhere (WPF/E), a "reach" technology, can be leveraged to offer a standalone XPAB solution, a "richness" technology. With Adobe, the idea has always been that the same technology can provide richness and reach. Flash Player behaves the same if it is on a Mac, or Windows.. That said, there are things that can be done with WPF that can't be done with Adobe's technologies. The hardware acceleration allows developers to take advantage of 3D data visualization and WPF integrates very well in the Windows platform. In the end, each developer needs to take a look at what the most important aspects of the project are and choose accordingly.
Parimal described the five pillars of the Microsoft platform: Windows, Office, the Web, Devices, and Digital Home/Entertainment (such as Windows Media Center applications, XBOX games). Within those pillars there are different tools and technologies that allow developers and/or designers to take advantage of the platform while running under one of the pillars. Within the pillars there are some more specific directions. For instance under the web, Parimal described the "differentiated web/browser experience for the Windows platform" which used Microsoft's XBAP; "differentiated ubiquitous experiences for X-platform, X-browser-device scenarios" which used "WPF/E;" and the "standards based web experiences" which developers/designers could tap into by using Microsoft's "Atlas" project. When you are working with Windows, there is the enterprise environment and the consumer environment. For the enterprise windows development, Microsoft will continue to support Windows Forms, but they are going to make sure that there is interoperability between WinForms and WPF , which allows Line of Business scenarios to leverage the power of WPF. This can be accomplished by hosting WPF controls in your WinForms applications, or vice-versa. For developers creating differentiated/consumer facing Windows smart client applications, WPF will be the technology of choice. For X-platform-X-browser and devices, WPF/E will allow developers to create engaging, branded experiences. Finally in the entertainment/gaming pillar, Microsoft is continuing to push its DirectX standard and Windows Media Center technologies, which anyone who has played a video game should be familiar with.
What should be unsurprising about the Microsoft vision is that it encompasses everything from your Smartphone to your Xbox. And for developers, the fact that Microsoft is fully engaged across the spectrum of access points could be a big draw. Their platform has a lot of strength to draw on, and I think when Vista comes out, people are going to be impressed with the experience. If Microsoft can gain momentum for that, then their RIA strategy will benefit.