Channel9 Interview on the origins of WPF

Channel9 recently interviewed former DHTML Dude and now General Manager of the Windows Client Division Michael Wallent on the origins of WPF. The history of WPF and how the decisions made in its evolution shaped what it looks like today are very interesting. There were also a number of hints as to what we might expect in the future. Here are some notes in case you don’t have time to watch the whole video.

Origins of WPF

  • IE team developing DHTML apps start hitting limits in terms of what can be done creating “rich web clients”
  • Created VML, but had problems due to the number of elements displayed on-screen. Each small section of text had as much weight (in memory) as a button.
  • Late 2000/early 2001 - parts of IE and windows client teams merge and set out to create a new web client platform that can also be used to build windows on. New platform is code-named Avalon.

Core Ideas for Avalon

  • Integrated platform for UI, documents and media
  • Managed code - so it is strategically aligned with the rest of Microsoft
  • New markup language (XAML) instead of XHTML. The impedance mis-match between XHTML and .NET was going to be too high, and they wanted markup to be a first-class citizen.
  • New code-base.

WPF

  • Focus on off-cycle shipping (yearly or better) in the future. It sounds like Michael wished they built half of WPF first and then released a few years ago, and get customer feedback rather than dropping the whole thing on us now. He wants to correct that in future releases.
  • After RTM they plan quick releases of samples that (if they are well-received) are rolled into the platform in future iterations.
  • Bill Gates was ultimately the person that needed to be convinced for WPF to go ahead
  • Plans to ship un-managed API for MILCore in the future that will become the moral equivalent of GDI and GDI+.
  • Multiple WPF apps running at the same time on vista will run better because of the new driver model where video memory is virtualized.
  • WPF wasn’t supported on Windows 2000 because of any technical limitation - most of the machines running Windows 2000 are older and are unlikely to have the necessary graphics hardware and memory for a good experience.
  • Michael estimates there will be 500 million PCs with WPF installed 1 year after RTM.
  • Michael would like to see more support for scripting - XAML + script, but this is not in scope for V1.


WPF/E  

  • used for the cross-platform XPS viewer (so becomes strategic beyond just WPF)
  • would like to see 3 releases for that team in the next 18 months…not sure if this is B1,B2 and RTM or V1,V1.5 and V2. The latter would seem highly ambitious.
  • ~800K Core, missing features like 3D deep text flow (interesting that XPS does NOT require deep text flow)
  • new cross-platform WMV + alpha codec