5/15/04
<< 72 Squared WeblogFlash: polished interfaces or functional widgets?
Flash is fun. No doubt about it. My first year of web design I spent a lot of time learning to program in Flash.
I
thought everything should be programmed in flash. It is amazing
technology. I taught myself how to do complex animations, physics-based
user interactions, games, and xml communication. But the more websites
I built the more I shied away from building sites in flash. Why?
-
HTML is scaleable. By that I mean that the tags stretch to accommodate the content. With Flash, the content must fit within the plug-in's dimensions. When building dynamic content, it is impossible to know how much space I will need to fit in the content. As a result, I have to build a scrolling window inside the flash plug-in to hold it. Now the user has two scrolling windows: the browser, and the flash interface. Not efficient.
-
It takes a long time to move from concept to completion in Flash. Because flash is so feature rich, and because it is time-line driven, developers are tempted to build a whole lot of fancy animation into their application. It takes a lot of time to build successful interfaces that are timeline driven. In the end, it makes for a glamourous interface, but isn't it mostly just show? Does it give the user a better experience? Occasionally, a flash interface delivers content so smoothly, that the interface is secondary. This is a successful flash site. Most often, flash draws attention away from the message. No good.
-
The web is driven by intormation. Yes it is important to design fun interfaces. But often the average user struggles to learn how to use that interface when what they really want to do is get to the information. The html document model is a proven content delivery mechanism. It allows you to do most of the things necessary to deliver the information with as little fuss as possible. In fact, this site is limited to very simplistic html with no javascript in it at all, yet it presents the information in an aesthetically pleasing way that is very accessible even to technophobes.
-
Flash content is often overly heavy. A user has to site and wait for pre-loading scripts, and other mechanisms just to get to the content. Why not figure out a simple way to deliver it?
Of
course there will always be a need to deliver super websites with
amazing visual effects, stunning animations and clever interfaces.
Often these sites are the personal sites of creative web designers and
developers. I have made numerous sites entirely out of flash. But
although I was able to create a stunning visual experience in flash,
maintaining the content was a pain. Can't flash be used to do something
more functional? I've noticed sites like yahoo have been providing
their users with special little interface plug-ins like menus, and
widgets that help their users edit and change information and customize
the experience. Instead of creating the entire interface out of flash,
more and more sites are using flash to extend a primarily html site.
This is a very efficient way of providing functionality that does not
exist in html. Unfortunately, right now there is only a very limited
set of methods a developer can use to transfer information between the
HTML DOM and flash and these methods are not supported in every
browser. If flash wants to continue to expand, it needs to strengthen
these methods so that it becomes easy to connect and extend the
standard html interface with flash widgets that give the user easier
and more intuitive ways to accomplish tasks on the web. Companies are
building applications with thin web clients that before could only be
built with a custom "thick" application. Flash can help bridge the gap
between thin and thick client. There is a huge market to be exploited
here but only if flash finds more ways to bind flash widgets to html.
So am I losing my way, thinking only like a programmer now, and
ignoring my design roots? Perhaps. But I think my goals have changed a
lot since I first started out on the web. I'm trying to get my message
out to the user, not just impress and awe everyone with my technical
prowess. Perhaps that is why I view flash so differently now.
To
see an interesting site that delivers both a successful flash interface
coupled with flash widgets, check out one of my all-time favorite
sites: 2advanced.com