Silverlight (WPF/E) and Apollo: leveraging web app development skills

Two very interesting software development technologies are emerging that attempt to leverage web application development skills for new rich, interactive user experiences (UX) in the Internet and Web space across all platforms. Microsoft’s WPF/E (code-named Windows Presentation Foundation/Everywhere) aims to bring the richness of WPF with its Flash-like XAML graphics and animation to the user experience for cross-browser web applications. Apollo from Adobe is primarily aimed at rich internet applications (RIAs, on the desktop) that have intermittent connection to the web, and targets Flex and Actionscript developers. Both technologies build upon the DHTML DOM, JavaScript, Ajax and CSS technologies that are familiar to web application developers today.

Both techologies rely on cross-platform runtimes (WPF/E and Flash Player) that must be present on the user’s machine. WPF/E is primarily aimed for web page inclusion not unlike the Flash movies of today but provides the much richer declarative XML-based XAML (part of WPF) to represent the UI as opposed to the more complex Flash movie format. Apollo on the other hand is aimed squarely at the desktop with the concomittant problems of deployment and desktop installation. However, Apollo’s APIs provide local file storage so that applications can continue to work even when the Internet connection is not available, a major benefit.

I have delved a little into WPF/E which is only available at a CTP. It basically consists of a couple of JavaScript files to be included in a web page plus the XAML files (or embedded XML tags). The JavaScript APIs for WPF/E are very straightforward. A reasonably impressive example is the animated page turning example (need to accept the download of the WPF/E 1 MB runtime). The problem is generating the XAML files. Microsoft provides an interesting tool, Expression Blend part of the Expression suite, which is intended for UX designers and uses the same solution file/project file format as Visual Studio. Thus UX designers and web application developers actually work on the same file set. The highly intricate vector-based XAML media assets are generated with Expression Design (mix of Flash, Photoshop and Illustrator). All applications in the Expression suite are WPF applications. WPF/E is a real mouthful to say but yesterday I learned the actual product name has been chosen (couldn’t be told sadly) and real soon now the first integrated release will be upon us. [Update: we now know the name is Silverlight, see the SeattlePI article and the Microsoft Silverlight site.]

I have not used Apollo yet the alpha currently out only supports Flash and Flex, but future versions will allow just JavaScript and Flash. Even for the Apollo alpha the doco is 32 MB zipped! However the video of the eBay demo is impressive and allows you to continue to bid on items even when the connection goes down. Microsoft has some catching up to do but with SQL Compact Edition (in-memory database) waiting in the wings we can expect significant developments from them.

These are interesting times for rich interactive and animated user interface designers (like Flashie the parasites were good but it took only a short time for one colour to dominate).

Published with Word 2007


About Michael Rees
Academic in IT interested in Web 2.0 and social media

One Response to Silverlight (WPF/E) and Apollo: leveraging web app development skills

  1. Pingback: Impressions Scholarcast » 3D Video from a single 2D image? Feasible?

%d bloggers like this: