Modern Flash development

Flash is one of those technologies everybody loves to hate, usually right after admitting that it can do some genuinely impressive things.

Used properly, Flash is an useful tool for creating interactive visual effects. Used badly, it’s the digital equivalent of putting a revolving neon sign in your living room: loud, unnecessary and difficult to ignore.

And then there are the usual problems with accessibility, semantics and search engines. Google’s bots aren’t terribly impressed by a mysterious binary file sitting where the actual content should be.

Fortunately, some clever people have spent the last few years trying to make the whole thing slightly less painful. We’ve endured the eternal <Embed> versus <Object> struggle, moved on to the classic Flash Satay method, and eventually arrived at SWFObject. Combined with techniques such as swfAddress, it offers a much cleaner progressive-enhancement approach to getting Flash onto a page without completely abandoning the rest of the web.

Then came sIFR (scalable Inman Flash Replacement), which lets you replace ordinary text with Flash-rendered typography on the fly. A wonderfully elaborate solution to the ancient problem of designers wanting fonts that browsers stubbornly refuse to provide.

There’s also swfIR (swf Image Replacement), using unobtrusive JavaScript, progressive enhancement and Flash to add visual effects to existing images. Faust takes a similar approach. Even the old SEO problem has seen some progress, with unobtrusive Javascript providing actual indexable content beneath the shiny Flash exterior.

There is however the usual catch. Most of these solutions depend on JavaScript to insert the Flash content, and assuming JavaScript will always be available is the sort of optimism normally associated with holiday brochures and software project estimates.

So graceful degradation still matters. Better yet, start with progressive enhancement: build something that works first, then pile on the clever stuff afterward. With the current Ajax frenzy encouraging developers to throw JavaScript at anything that moves, this seems more important than ever.

Accessibility remains Flash’s awkward relative at the dinner table. Everybody knows the problem is there, but nobody quite knows what to do with it. Still, things are improving, slowly but noticeably. And just when we might finally be figuring all this out, Microsoft has WPF/E waiting in the wings. No doubt we’ll get to have the entire argument all over again. Something to look forward to.

Comments

No comments yet.

Leave a reply