« Newer | Older »

April 01, 2005

AFLAX will not win over AJAX developers

Xamlon recently started promoting AFLAX as an alternative to Jesse Garrett's AJAX.

AJAX is a label for Web apps that use HTML, asynchronous Javascript, and XML. AFLAX says hey, why not use Macromedia Flash instead? Paul Colton of Xamlon calls Flash "the world's most ubiquitous Internet platform".

It must be April 1st.



Let's compare AJAX and AFLAX:

AJAX: based on Open Standards; runs in browsers from multiple vendors; runs on desktop; mature mobile support; has a great Open Source implementation.

AFLAX: Uses Macromedia Flash, a propietary closed runtime from a single vendor; no Open Source implementation; weak mobile phone support; sounds like an insurance company.

Flash ubiquitous? Yes, its installed on lots of desktops. However, Flash support on other devices is poor. My Symbian phone runs AJAX today. But no Flash yet. Nor is it likely that the Mobile version of Flash will be compatible with the desktop version anytime soon.

Flash a platform? In my experience, 90% of Flash content consists of banner ads. What kind of platform is that? Flash banner ads have become so invasive that I now actively block Flash content. I used to love Flash, but these days I've reluctantly given it up. Like other developers, I've written my Dear Flash letter. I prefer to see a broken-image icon than a bad animation with no stop button.

Then there is the Flash accessibility black hole. If you slide your mouse over a Flash movie, suddenly your mouse wheel stops working and all your keyboard shortcuts change.

Usability? One of the best things about the Web is the Back button. But the Flash Rich UI initiative breaks the browser's back button. Of course, some AJAX applications do too. However, in AJAX you can at least address the browser's Back button through Javascript. In Flash, addressing the back button requires some serious rocket science.

The problem is that Flash has an "I own the screen, I own the browser, I own the user interaction" philosophy. However, in practice Flash movies are nearly always share space with an HTML page that contains other content. Getting Flash to communicate with other controls on the web page is hard.

Colton compares Flash to .NET, saying "Because Flash, unlike .NET applications, can run on any device, this opens up the development of applications for different platforms and form factors". As of today, Microsoft's .NET cross-device story rivals Macromedia's. Microsoft, not Macromedia, is the second runner in the smartphone category, and their smartphones run .NET. There is also a healthy Open Source .NET effort called Mono, enabling a lot of .NET code to run on open source platforms.

What would it take to get me to change my mind on Flash? Create a Flash event model which plays well with other HTML content on the page, e.g. not grabbing the mouse wheel when there is nothing to scroll. Make the tab key navigate seamlessly between HTML controls and controls in multiple Flash movies. Use a shared undo stack between Flash and the Browser (Xamlon text controls do not seem to have undo/redo yet). Provide bi-directional calls between ActionScript and JavaScript on all the major browsers. Deliver Flash MX 2004 on my phone this year. Add hardware-assisted 3D features. Offer real rich text. Unleash a viable open-source runtime. If Macromedia moves in this direction, maybe I'd consider Flash again.

In my twenty years as a UI developer, I view Flash as one of the biggest UI technology disappointments. The other is Java.

Related Articles

Xamlon Out to Connect Flash to .NET

Ajax vs AFLax, Flash Forward and FITS

Comments


Comments are temporarily disabled. Go to my feedback page to send me comments.