Posted Sunday, February 16, 2003
Flash is a vector animation software originally designed to create animations for display on web pages. Vector graphics are ideal for the web because they are so lightweight. Over the releases of new versions of Flash, Macromedia has made Flash more and more controllable via programming where now they have it positioned as a competitor to HTML to build interactive web sites and applications such as an e-commerce store. Macromedia argues that Flash is the way to go instead of HTML because of the following reasons:
- Flash ‘pages’ (actually called movies) load faster and save on download time because Flash is vector based where as HTML is not.
- Flash intelligently ‘caches’ its movies so they don’t have to be reloaded.
- Flash gives the users (the person viewing/using the Flash movie) a more responsive ‘rich-client’ like experience.
All of these points are true, but they can be true for HTML pages as well(except for the vectors). I will address these points now:
- Flash pages can be made to load faster, but most of the time the way they are designed in the real world they do not. That is not a Flash problem, it is more an issue of the Flash developers going nuts with fancy and heavy Flash movies.
- HTML caches pages as well, once images are downloaded they are held in your browsers cache; the cached version are then used instead of dowloading them from the server again.
- With new technology like ASP.net and Java Server Faces, HTML now can react just like a ‘rich-client’ application. Even without these new tools, properly designed HTML for most dynamic sites can provide a good user experience.
What I have against Flash?
Before I start trashing Flash I have to first say that I think it is great, but not in all things and certainly not in the all-encompassing way that Macromedia would have it. Here’s why:
- Flash handles text very poorly. The web for the most part is about text, we go to the web to read about things, whether they are articles like this one or what is in your shopping cart or the latest baseball stats, it is all text. Flash text rendering/displaying is much slower than HTML and noticeably less clear. Macromedia knows this and that’s why they include the ability to display basic HTML in Flash and that’s why on their own site they make heavy use of HTML.
- Flash development usually takes much longer than an HTML equivalent. This is has been helped to a great degree in the latest release of FLASH MX where they essential provided HTML form components, but it still slower to create a Flash site than it does and HTML site.
What I like about Flash development?
- You can do some really nice work in Flash that would be difficult and sometimes impossible in HTML alone. Things like complex animations and playing video spring to mind.
- Practically no browser issues: For the most part Flash movies will work the same if the user is on Netscape or IE on Mac or PC. The browser issues (where people coming to your site have different browsers that can ‘break’ your pages) are quickly becoming a thing of the past since most people (thank the web gods) are using IE. But even today I still have to deal with people who may be using some old dated browser that can break all but the simplest of HTML code.
So when should you use Flash?
In my humble opinion I would use Flash to create a presentation that is similar to a television commercial. This type of presentation is something where the user sits back and enjoys the show as the Flash movie delivers the message to the client with animation, sound and possibly video. Please do not get this confused with those ubiquitous ‘intro’ animations that still plague many Flash sites. Rather I am talking about informative movies that the user can select to view to learn about something like a product or a service.
I can also see Flash being used in straight animations like your kids watch Saturday morning. One last use that I find that Flash can be handy is with so called ‘rich-ui’ components like calendars or fancy navigational systems.
Instead of Macromedia’s vision, I see Flash being used selectively to enhance an HTML based site.