But I was thinking tonight as I was revisiting the concept and turning it around in my head: how would I feel about this if I was Macromedia? Not too happy!
In fact, at http://www.macromedia.com right now, the ad at top of of the page says: “Great digital experiences unleashed.”
The answer, I think, is fairly simple: Flash is fat, and Ajax is slim.
Flash has deep roots in the world of images. Its bad name – a heritage that still lingers, to a degree – is almost entirely due to its overuse of images, dancing bears, and other glitzy gew-gaws that are good demo-ware but bad anything-else-ware. And even today, for the simplest of things, Flash apps are going to set you back something a minimum of tens of kilobytes – and that’s a bare minimum.
Whereas Google suggest which does things that absolutely blow your mind like provide sensible real-time suggestions and results as you type in search terms, is, wait for it, all of 4 kilobytes.
Ajax needs speed like Mario Andretti needs speed. Providing desktop-type performance over a thin wire a thousand miles long is capital H hard … and to do it, you need to be skinny. Really skinny.
The question is, is it skinnier than Flash can ever be? I think it is, and I think Macromedia better watch out.
Right now Ajax is hard. It’s a combination of a 4 or 5 leading-edge technologies that few web developers fully understand. You’ve got to use them and put them together just right to make everything work.
But just wait. Very shortly, some smart start-up, and probably more than one, will start providing pre-built Ajax engines: everything you need to get Ajax web apps up and running in less time than it takes to install Microsoft Word.
And there’ll be a nice user-friendly GUI tool in which to build and publish your app. Connect the dots, add your content, link in to your data sources and voila: Ajax for dummies.
At that point, Flash will once more be relegated to the image-intentive ghetto Macromedia is trying so hard to escape.
Flickr does use Flash, but only (I believe) for image editing purposes – where you would have to say it makes sense. Tagging, etc. are Ajax functionalities.