Feeds

Adobe takes on Java and .NET

Why Flex and Apollo will shake up client application development

High performance access to file storage

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

High performance access to file storage

More from The Register

next story
Android engineer: We DIDN'T copy Apple OR follow Samsung's orders
Veep testifies for Samsung during Apple patent trial
This time it's 'Personal': new Office 365 sub covers just two devices
Redmond also brings Office into Google's back yard
Windows 8.1, which you probably haven't upgraded to yet, ALREADY OBSOLETE
Pre-Update versions of new Windows version will no longer support patches
Microsoft lobs pre-release Windows Phone 8.1 at devs who dare
App makers can load it before anyone else, but if they do they're stuck with it
Batten down the hatches, Ubuntu 14.04 LTS due in TWO DAYS
Admins dab straining server brows in advance of Trusty Tahr's long-term support landing
Half of Twitter's 'active users' are SILENT STALKERS
Nearly 50% have NEVER tweeted a word
Windows XP still has 27 per cent market share on its deathbed
Windows 7 making some gains on XP Death Day
Internet-of-stuff startup dumps NoSQL for ... SQL?
NoSQL taste great at first but lacks proper nutrients, says startup cloud whiz
Microsoft TIER SMEAR changes app prices whether devs ask or not
Some go up, some go down, Redmond goes silent
prev story

Whitepapers

Securing web applications made simple and scalable
In this whitepaper learn how automated security testing can provide a simple and scalable way to protect your web applications.
Five 3D headsets to be won!
We were so impressed by the Durovis Dive headset we’ve asked the company to give some away to Reg readers.
HP ArcSight ESM solution helps Finansbank
Based on their experience using HP ArcSight Enterprise Security Manager for IT security operations, Finansbank moved to HP ArcSight ESM for fraud management.
The benefits of software based PBX
Why you should break free from your proprietary PBX and how to leverage your existing server hardware.
Mobile application security study
Download this report to see the alarming realities regarding the sheer number of applications vulnerable to attack, as well as the most common and easily addressable vulnerability errors.