Adobe and Microsoft are engaged in a technology war. Microsoft’s Expression range of web design tools and its new technology for browser-hosted applications called Windows Presentation Foundation (WPF) encroaches directly on the territory occupied by Adobe’s Flash. At the same time, Adobe is determined to make the Flash runtime a platform for enterprise application clients, both in the browser and on the desktop, taking market share from Microsoft’s Visual Studio and .Net runtime.
Recently I spent some time trying out Adobe’s Flex 2. Flex has both server and client components. On the client it is essentially a way of creating Flash applications using developer-friendly XML and ActionScript.
Flex applications can communicate with the server either using standard XML web services, or else by using the Flex server component running on J2EE for improved performance and ease of programming. I was particularly impressed by the advances in ActionScript, Adobe’s version of JavaScript. Two notable features are strong typing and just-in-time compilation to native code.
The result is improved performance, claimed to be 10 times faster in some scenarios. Calling this a “scripting language” no longer seems adequate, as it gains features previously reserved for the likes of Java and C#. JavaScript is everywhere now, with Ajax (Asynchronous JavaScript and XML) becoming mainstream in both the Java and .Net worlds. Every web developer needs to know JavaScript, so Adobe’s use of it in Flex is a smart move.
Game over for Microsoft? Not necessarily. In January the British Library unveiled an application called Turning the Pages, enabling internet users to examine some of its rarest books. It is a compelling browser-hosted WPF application that supersedes an earlier version using Adobe’s Shockwave player. You can zoom in on works like the original manuscript of William Blake’s poem The Tyger, leafing through its pages in virtual space.
The new implementation makes the old Shockwave version look plain and dull. The secret spice is that WPF uses the Windows DirectX gaming API to render its graphics, enabling effects that are difficult to achieve with the cross-platform Flash or Shockwave players. The downside is that only high-end Windows systems can run the application, in contrast to the broad deployment of Adobe’s runtimes.
My guess is that there will be no immediate winner in this battle, but that the competitive efforts of these two players will raise expectations for web applications. The sharp distinction between desktop and web applications is fading to a seamless blur.






reader comments