The Case for Flash

I’ve often been a critic of Adobe’s Flash platform. It’s been used (quite annoyingly) for advertisements and full website “experiences.” As video began to proliferate the Internet, Flash became the defacto standard, even though the implementation was buggy and hacked-together at first. Flash ushered in a rich-media web that would’ve never been possible without it.

I still stand by my original criticisms. Websites written entirely in Flash annoy me to no end. The few that implement this model in a competent way are tolerable, but in my opinion should still be focused more on using ratified web standards like HTML, CSS, and Javascript. Many animations and special effects previously available only to Flash developers are now quite accessible by more traditional web developers.

Flash was great for ushering in the web video revolution–I’m not sure anyone can really dispute that since any other platform would’ve been severely limited by either technology or cross-platform availability. Flash does video pretty well these days and I’ve been quite happy with it. HTML5 video is still in its infancy and Flash video players generally offer more options than their HTML5 native counterparts. YouTube now offers many of its videos in HTML5 format, but they’re still working on the implementation. It’s getting better, but isn’t there yet.

We should definitely be pushing video on the web into the HTML5 standard, since it will offer much better compatibility across browsers and platforms once it begins to truly mature. There’s no reason this transition shouldn’t start now, and for the most part, it has.

Unfortunately, the ongoing battle between Apple and Adobe is blinding many people in the consumer, technical, and press fields to the fact that Flash has many uses far beyond that of video. Arguments across forums and blogs go back and forth–discussing the merits (or lack thereof) of Apple’s stark refusal to support Flash, and analyzing the supposed fall of the Flash platform. Most of these people are far too focused on Apple/Adobe and are not at all aware that Flash can (and should) be used for a variety of other things.

For instance…

There is a huge push for Flash as a next-generation gaming platform. While taking a class at Carnegie Mellon University, I witnessed a presentation by WildPockets–a company whose entire business is allowing people from any background create 3D games for the web with a social twist. Their tool of choice? Flash.

Check out the Human Computer Interaction schools at leading universities around the nation and you’ll find students and professors alike using the Adobe Flex platform to explore new ways to build user interfaces. Flex leverages both Adobe’s Flash and AIR platforms. Oh, and did I mention that it’s completely open source?

Flex, Flash, and AIR are being used every day to build quite powerful (and great looking) applications that run (many times without customization or modification) on a variety of platforms. While you might not build software like Photoshop or Outlook on a framework such as this, you could definitely build successful iPhone, Android, Blackberry, and webOS apps using a platform like Flex, Flash, and AIR. Flash even supports hardware graphics acceleration!

The list of examples could go on and on, but I think I make my point quite clearly. The Flash naysayers don’t seem to understand the full set of issues. All they see is Apple and Adobe going at it and are far too hasty in picking sides. Maybe this has something to do with a certain “reality distortion field“…or not.

Bottom line: It’s far too early to say that Flash is dead or dying (as some propaganda pushers are claiming). Instead, I think the platform and technology are morphing and changing to fill needs in other areas. I’d rather our two corporate enemies stop fighting and work out a solution that is good for the consumer instead of publicly bickering between themselves and starting flamewars between fans of either side.

Posted in Software, Web
  • Dave J.

    I agree, the point of Flash is cross-platform development.