Unless you follow me on twitter (@flashfreaker), you’re not privy to my growing concern with the perception of the Adobe Flash runtime by many standards-based members of the web community. With yet another move by Apple to be the guardians of the “open web” with its announcement of the iPad yesterday, there seems to be more fuel for the anti-Flash camp and a call to action for those who use Flash or any other 3rd party plug-in to voice our opinions. Most of this anti-Flash chatter relegates Flash to an under-performing video player and stresses that the HTML5 <video> tag takes care of all video needs for the Internet. Ergo, the world wide web no longer needs Flash so let’s just get rid of Flash content all together. I’ll start my defense of Flash by doing a less-than-comprehensive review of where Flash content is employed on the Internet:

  • Banner ads: Most advertising on the web has relied on the small file size (well, hopefully it’s kept small) of Flash SWF files to deploy ad graphics, including micro sites for product demos. With chatter I’m seeing on twitter, I’m getting the impression that many people believe web ads will just “go away” and good riddance. While I’m not a fan of annoying banner ads (and most of them are, indeed, obnoxious and annoying), I’ll take the lesser of all evils and suffer a small Flash SWF eating up a minor portion of my bandwidth than some other multimedia format. Future without Flash prediction? Banner ads could turn into video ads that are much larger in file size and data transfer than the equivalent animation/experience in a Flash SWF. Poetic justice, perhaps, for the already crippled AT&T 3G network that the iPhone uses for its open web experiences.
  • Web applications for e-business: Many businesses rely on Flash technology to deploy rich internet applications (RIAs). While a portion of these applications could be built with current HTML/JavaScript/CSS capabilities, many businesses prefer to use SWF because now, more than ever, the programming required for the front end SWF file (ActionScript 3.0) can be utilized across multiple platforms, from the web to the desktop (Adobe AIR) to mobile devices–Flash Player 10.1 is finally gaining ground this year on mobile devices! Businesses also want to protect their front-end intellectual property by using the SWF file format, thereby preventing exposure of their user-interface capabilities via HTML/JavaScript/CSS. It’s true that SWF files can be decompiled, but from a legal standpoint, if company B “steals” code from company A’s SWF content, it’s pretty clear they took extra steps to access the code and extract it. Perhaps more importantly, let’s look at the software development process in general. Web applications are not web pages–they’re apps in the browser. So, they’re written, usually, by experienced computer programmers who need grown up programming languages. If you’re not aware, Flash Player’s scripting language, ActionScript, has grown up over its 10+ years of life, and more “traditional” software developers continue to embrace Flash technology with the growth of Adobe’s open source Flex framework and its free compiler. You don’t even have to give Adobe any money to make a web application. (I prefer to use their tools because it’s usually much less hassle, which means less $$$ my clients have to spend to get something built quickly and reliably.) JavaScript has to play a lot of catch up to reach the capabilities of ActionScript 3.0. Also, many businesses want their applications to run across the web and on thin clients. I’ve worked on two projects for companies targeting gym chains, and they can take their application from a Linux client running nothing but the OS and AIR with cheap hardware to the “normal web” without a complete reinvestment in a new solution. As more and more devices run multimedia content, from cars to boats to kitchen appliances, reuse of existing IP is critical.