Feeds

Adobe takes on Java and .NET

Why Flex and Apollo will shake up client application development

The Power of One Brief: Top reasons to choose HP BladeSystem

Adobe Flash came from nowhere to become the obvious choice for embedding video into websites, despite the presence of well-established alternatives including Real, Windows Media and Quicktime. Could it have a similar impact on client application development? Last month Adobe’s Ben Forsaith ran a Flex 2 workshop for the press, showing off the new Eclipse-based IDE called FlexBuilder.

In essence, Flex is just another way to compile a Flash movie, using XML and ActionScript in a code-centric environment that’s more amenable to developers than the designer-oriented Flash IDE. There’s a visual designer with a basic range of GUI controls, and it’s an effective application development tool; although it falls short of more mature environments like Microsoft’s Visual Studio. Editing XML can be annoying and so it would be easy to nitpick the FlexBuilder IDE.

That may not matter. Flash Video took off because of its simple deployment story. All you need is the latest Flash player. The same is true of Flex. In addition, ActionScript 3.0 evolves the JavaScript (strictly ECMAScript; see here) language into something developers can take seriously for more than just scripting.

Two key new features are just-in-time compilation and the option of strong typing. ActionScript’s strong typing is not just cosmetic, but used by the compiler to create more efficient binary code. Apparently, it’s up to ten times faster than previous iterations, enabling applications that do significant amounts of client-side processing.

The rise of AJAX has proved that the smoother, richer experience of applications that run on the client but draw data from the Internet is worth the pain of writing JavaScript that works across different browsers and on different platforms. The Flash runtime improves on AJAX by largely solving these compatibility problems, or if you prefer, you can combine the two, with code in your AJAX application talking to the embedded Flash applet.

Have we not seen this before, in the form of Java applets, Microsoft’s ActiveX, and other browser plug-ins? This is where the parallel with video is most apt. Browser-hosted Java applications pack plenty of power, but the Java runtime is huge compared to Flash, and exists in a bewildering variety of versions, holding back broad adoption. ActiveX is neither cross-platform nor cross-browser, tricky to develop and associated with security problems.

A closer parallel is Microsoft’s Windows Presentation Foundation (WPF), which appears to have solved the problem of secure and easily-deployed browser-hosted .NET applications. Unfortunately, WPF requires a large runtime and only works on powerful, recent Windows boxes. WPF compensates by offering exceptionally rich graphics and multimedia, but its relatively narrow reach rules it out for broad adoption. Microsoft does have a cross-platform version of WPF, called WPF/Everywhere, but this is still in development and is less powerful than its Windows-only cousin. Adobe has a big lead here.

There are downsides to Flex. Although the ActionScript language is much improved, Java or .NET developers will miss the comprehensive frameworks they get with their respective platforms. It’s also designed on the assumption that data flows from the Internet, either over web services or via the proprietary Flex Data Services running on a J2EE application server. Creating applications that work offline is a challenge.

Further, while the Flash runtime is widely deployed, it’s not universal, particularly when it comes to mobile devices - and bear in mind that Flex 2 requires Flash 9 and does not work with earlier versions.

Another concern is the proprietary aspect of Flash, versus open standards like HTML and JavaScript. At the same time, Adobe has a reasonably good relationship with the open source community. For example, ActionScript itself is now a joint project with Mozilla and the same code will be used in FireFox. The JBoss collaboration server uses Flex for its mail client, and in the tools area there are projects such as swfmill, which compiles and decompiles SWF to XML; and FlashDevelop, which is an open source Flash IDE, running (as it happens) on the .NET Framework. Free Flex and Apollo SDKs also make the proprietary aspect of Flash easier to live with.

Some of the Flex limitations will be lifted with the launch of the next version of Adobe Creative Suite together with a new product called Apollo. The updated Creative Suite will mean that the Flash IDE supports the same version of the player as Flex, enabling easier integration of Flash movies into Flex projects.

Apollo adapts Flex for the creation of desktop as opposed to browser-hosted applications and it promises to be well suited for offline use, providing access to the local file system. There’s also going to be PDF integration, though the exact form this will take hasn't been announced yet.

However, my hunch is that Flex and Apollo will make more impact than previous attempts from Adobe (or Macromedia) at cracking the market for rich internet-connected application. ®

Securing Web Applications Made Simple and Scalable

More from The Register

next story
Apple fanbois SCREAM as update BRICKS their Macbook Airs
Ragegasm spills over as firmware upgrade kills machines
HIDDEN packet sniffer spy tech in MILLIONS of iPhones, iPads – expert
Don't panic though – Apple's backdoor is not wide open to all, guru tells us
NO MORE ALL CAPS and other pleasures of Visual Studio 14
Unpicking a packed preview that breaks down ASP.NET
Captain Kirk sets phaser to SLAUGHTER after trying new Facebook app
William Shatner less-than-impressed by Zuck's celebrity-only app
Do YOU work at Microsoft? Um. Are you SURE about that?
Nokia and marketing types first to get the bullet, says report
Microsoft takes on Chromebook with low-cost Windows laptops
Redmond's chief salesman: We're taking 'hard' decisions
Cheer up, Nokia fans. It can start making mobes again in 18 months
The real winner of the Nokia sale is *drumroll* ... Nokia
Mozilla fixes CRITICAL security holes in Firefox, urges v31 upgrade
Misc memory hazards 'could be exploited' - and guess what, one's a Javascript vuln
prev story

Whitepapers

Designing a Defense for Mobile Applications
Learn about the various considerations for defending mobile applications - from the application architecture itself to the myriad testing technologies.
How modern custom applications can spur business growth
Learn how to create, deploy and manage custom applications without consuming or expanding the need for scarce, expensive IT resources.
Reducing security risks from open source software
Follow a few strategies and your organization can gain the full benefits of open source and the cloud without compromising the security of your applications.
Boost IT visibility and business value
How building a great service catalog relieves pressure points and demonstrates the value of IT service management.
Consolidation: the foundation for IT and business transformation
In this whitepaper learn how effective consolidation of IT and business resources can enable multiple, meaningful business benefits.