Atlas? Nah... WPF/E!

I know most people attending the MIX06 conference are talking about Internet Explorer 7, Atlas and Microsoft's support for Ajax and the "Web 2.0". I'm not saying those are not interesting. I just did a presentation this morning and I covered some of that.

If you don't know what MIX06 is, check https://www.mix06.com/
If you don't know what Ajax or Atlas are, check https://atlas.asp.net/

But that's not really what I wanted to mention. As I was talking with a coworker this morning, you should be taking a look at WPF/E, or the Windows Presentation Foundation Everywhere.

You see, WPF (formerly know by the codename "Avalon") is the presentation part of the next-generation WinFX framework that will allow you to create high fidelity UIs for rich applications. It defines shapes, documents, images, video, animation, 3-D and "panels" in which to place controls and content. It covers how to draw windows, show elements in it, print it, define input controls and much more. All this is described using XAML, the markup language for defining those WPF elements. Think creating a markup text file in notepad and creating a simple WinFX call to render it.

If you never saw any of this, check this video:
https://channel9.msdn.com/Showpost.aspx?postid=62621

If that got you interested, read more at:
https://msdn.microsoft.com/winfx/reference/presentation/default.aspx

Oh, did I mention also great tools for designers? Along with WinFX, Microsoft is also working with a new line of design tools for 2D and 3D interfaces called Expression. Check details at:
https://www.microsoft.com/expression/

This is probably what you would expect from Microsoft. Specifications, APIs and tools for creating the next generation of rich Windows applications. By the way, WinFX (and WPF) will be available for Windows Vista but will also run on Windows XP and Windows Server 2003.

Now, the twist. :-)

How about a version of WPF that would still do vector graphics, animations, video and controls but would run on non-Windows platforms as well? That's what WPF/E is all about. The idea is to render a good portion of those sophisticated interfaces in multiple platforms.

This will allow XAML-specified, richer applications that will work unchanged in Internet Explorer on Windows, Pocket Internet Explorer on Windows Mobile, Firefox on Linux and Safari on MacOS. Similar to Atlas, but better. Think Flash animations with a more elegant markup language behind it and more sophisticated elements, including fun things like video streaming. Technically, WPF/E is a subset of WPF that will render XAML-defined interfaces on different browsers using JavaScript and plug-ins.

WPF/E was first introduced at the PDC last year, with presentations showing some XAML code being rendered in IE7 on Windows Vista and also in Safari on a Mac. The recent MIX06 developer conference created ever more exciment around it.

All this is still in beta and some pieces of it don't event exist yet. I have not heard of an actual Linux/Firefox implementation yet, for instance, although everyone thinks it's doable. Keep an eye on this WPF/E thing and make sure you follow up on the progress of the Expression tools.