Feeds

Adobe takes on Java and .NET

Why Flex and Apollo will shake up client application development

Security and trust: The backbone of doing business over the internet

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. ®

Providing a secure and efficient Helpdesk

More from The Register

next story
New 'Cosmos' browser surfs the net by TXT alone
No data plan? No WiFi? No worries ... except sluggish download speed
'Windows 9' LEAK: Microsoft's playing catchup with Linux
Multiple desktops and live tiles in restored Start button star in new vids
iOS 8 release: WebGL now runs everywhere. Hurrah for 3D graphics!
HTML 5's pretty neat ... when your browser supports it
Mathematica hits the Web
Wolfram embraces the cloud, promies private cloud cut of its number-cruncher
Mozilla shutters Labs, tells nobody it's been dead for five months
Staffer's blog reveals all as projects languish on GitHub
'People have forgotten just how late the first iPhone arrived ...'
Plus: 'Google's IDEALISM is an injudicious justification for inappropriate biz practices'
SUSE Linux owner Attachmate gobbled by Micro Focus for $2.3bn
Merger will lead to mainframe and COBOL powerhouse
iOS 8 Healthkit gets a bug SO Apple KILLS it. That's real healthcare!
Not fit for purpose on day of launch, says Cupertino
prev story

Whitepapers

Secure remote control for conventional and virtual desktops
Balancing user privacy and privileged access, in accordance with compliance frameworks and legislation. Evaluating any potential remote control choice.
WIN a very cool portable ZX Spectrum
Win a one-off portable Spectrum built by legendary hardware hacker Ben Heck
Storage capacity and performance optimization at Mizuno USA
Mizuno USA turn to Tegile storage technology to solve both their SAN and backup issues.
High Performance for All
While HPC is not new, it has traditionally been seen as a specialist area – is it now geared up to meet more mainstream requirements?
The next step in data security
With recent increased privacy concerns and computers becoming more powerful, the chance of hackers being able to crack smaller-sized RSA keys increases.