AIR gets rich apps right

AIR gets rich apps right

Adobe's AIR is safe, fast, versatile, and open, and it will be the standard platform for rich Internet applications

The modern browser makes an appealing client for Web-based applications, but even browsers like Safari 3.1 that incorporate features of HTML 5 and CSS 3 have limitations that keep them from competing with native .Net and Java desktop applications. In those areas where a browser falls short, such as video and audio playback and local file access, the developer must resort to a plug-in that is not fully controlled by the browser script, or ugly call-outs from script to native code. Browser-based applications can't be packaged or signed for consistent and safe installation, and the "click to launch" capability that users expect from native applications can only be approximated. When you're running a browser-based app locally, there's no mistaking it for native software.

Adobe AIR is not yet widely known or implemented, but it solves all of the major issues keeping the browser from being a common front end for applications. Software written for the AIR run-time installs, launches, and feels like a native application. AIR is a WebKit-based browser, endowed not only with HTML and CSS but also SQL and Scalable Vector Graphics. AIR also incorporates Flash 9-based capabilities with a powerful, network-connected open source ActionScript interpreter. AIR gives the application ownership of the entire window, chrome and all, so that apps can look like native windows (the default) or widgets with irregular borders and transparency. If you come to AIR from the browser side, it is the ultimate standalone AJAX run-time, the smartest way to put HTML, JavaScript, XML, and CSS to use on the desktop, and you can afford to count on Flash being installed. If you look to AIR as a Flash developer, AIR is the standalone Flash 9 Player you've always wanted, with HTML and CSS fully integrated. And everybody gets SQL, which is no small thing. It's finally safe for us to admit that no matter how cleverly we manage it, XML is no substitute for a database.

It's also high time we recognized how dreadful browser plug-ins really are. Plug-ins integrate with the browser's object tree only as well as they choose to. They take over whatever drawing region you set aside for them, and what happens inside that area is entirely in the plug- in's control. One page that has a mix of HTML, Flash, and QuickTime content has three separate processes running three separate rendering paths to a single window. The burden on system resources is enormous, and I can't bring myself to imagine what adding Silverlight to the mix would do.

Can we trust Adobe to bring cross-platform HTML, CSS, XML, JavaScript, vector animation, audio, video, data persistence, packaged installation, standalone run-time, and security together in a single package, to create the next-generation desktop? Adobe's got the credentials. It has stewarded Flash so well that it transcends browser preference wars; Flash is welcome everywhere. Adobe guards that trust jealously, so it made sure that when it reached beyond Flash to create a full Web-based desktop run-time, it did so with an uncommon commitment to transparency. The WebKit browser is free and fully open. Adobe gave its gem, the Flash ActionScript virtual machine, to Mozilla to create the Tamarin project, and then plugged Tamarin into AIR.

There is every reason to trust Adobe and AIR to carry Internet-enabled desktop applications to the next level. As a Web developer from way back, I'm excited about AIR's limitless possibilities for responsive and creative desktop apps. And the openness that Adobe invested in its solution will bring about a delightful consequence: An explosion in the worldwide library of well written, great looking applications.

Follow Us

Join the newsletter!


Sign up to gain exclusive access to email subscriptions, event invitations, competitions, giveaways, and much more.

Membership is free, and your security and privacy remain protected. View our privacy policy before signing up.

Error: Please check your email address.


Show Comments