Anti-Flash Standardistas – You're Cutting Off Your Nose to Spite Your Face

The more I read attacks on Flash, the more I end up shaking my head in confusion. Honestly, I am a little surprised this is still being debated. People, we need to get over this. Before I elaborate further, I want to make clear my support for web standards, usability and accessibility. Additionally, I understand the concern with Flash – it is not as easy to make accessible compared to HTML/CSS, it has, and continues, to be used for some really stupid things, etc., etc., etc. We have all been down that road, we have heard the arguments. That being said, standardistas: you are fighting a losing battle, and on top of it, a battle not worth fighting. Flash is about as standards-friendly as any media plug-in there is. For each bad use of Flash, there are hundreds being used well. Lastly, and more importantly, it is changing what we can do on a browser and how our generation accesses media. Please, for everyone’s sake, stop griping about Flash and start educating people on how it can be used more effectively with standards and accessibility in mind.

I have been developing with Flash for the last four years. Nonetheless, my philosophy is that if something can be done outside of Flash, it should. In fact, I have written on ways to minimize the amount of Flash used in certain areas. However, due to the fact that HTML was never designed to handle rich media (video, audio, vector-base imagery, motion, etc.), the overwhelming majority of rich media delivery cannot be done on the HTML layer. This becomes abundantly obvious due to the plethora of length tutorials on how to round corners or put a drop-shadow on a rectangle. In fact, I would argue that Flash is the ONLY way to deliver rich media – all other technologies (Windows Media Player, Quicktime, Real, etc.) are not only less pervasive on the internet, they are infinitely less flexible. The whole UGC (user-generated content) revolution would not have happened without Flash technologies pushing the content to viewers. Flash made this happen. Not standards (have you taken a look at YouTube’s HTML?), not AJAX, but Flash. I am not trying to diminish the necessity for web standards or AJAX, but many of the standards-manics seem to have their heads in the sand as to what Flash-enabled sites are achieving. In my opinion, the people that are still clenching onto the archaic notion that Flash is not necessary are diluting the discussion on web standards. Rather than deny its merits and accomplishments, why not work to push it further into the circle of accessibility and standards? No one wants technology and progress to be stifled in the name of standardization.

With Flash you have a plugin in which nearly 100% of users have at least some version of the player on their system. The makers have been working to make the technology much more accessible (can you say the same for Windows Media Player or Quicktime?). In addition, Flash allows things to be done that HTML/CSS/Javascript will NEVER be able to do barring some paradigm shift in the technologies. We hear quite a bit about how Flash is not as accessible as HTML/CSS/Javascript – ironically, the same people that are trying to replace Flash with extremely complex AJAX applications are nearly 200Kb of Javascript for the libraries alone (scriptaculous and prototype are roughly 190Kb combined). I developed the Current TV video player which stands at roughly 54Kb. A more basic and generic version of the same application could easily be under 20Kb. I am the first person to suggest keeping as much in HTML as possible. I am also one of the largest proponents of well-used AJAX. That being said, it is simply obtuse to attempt certain things outside of Flash – here are a few examples:

  • Advanced visualizations
  • Advanced motion treatment
  • Physics engines
  • Projects where visual typographic control is paramount
  • Video or audio playback
  • Video or audio recording through a webcam
  • Rich-media browser based games
  • All of the above occurring simultaneously

Ironcially, when you add up all the traffic from fringe browsers which are incompatible with the highly used Javascript libraries, it comes very close to the amount of users without the Flash player…

I would highly suggest giving Flash a serious second look. There are many new features that offer more accessible-centric options for development and design. Flash 8 and above offers new features for talking with Javascript – giving the potential for all interactive elements to be in standard HTML with Flash simply being the display. The express-install feature allows viewers to upgrade their version of Flash from the SWF on your own site – making upgrading much easier and much less cumbersome of a task. You are most likely going to find a lot of features you did not know existed which open the door to accessibility on the web.

I have no doubt the anti-flash standards folks mean well. That being said, should we not be devoting our energy towards making this technology more seamless throughout the browsing experience rather than pretend that it will just go away? And honestly, if it did somehow go away, would the web be a better place because of it?

24 thoughts on “Anti-Flash Standardistas – You're Cutting Off Your Nose to Spite Your Face”

  1. “For each bad use of Flash, there are hundreds being used well.”

    As a ‘standardista’, I think you have got that the wrong way round. Bad flash sites far outweigh good ones. That said, I do agree with most of your point, Flash is here to stay and it is very useful for certain types of things, such as animation and video.

    “scriptaculous and prototype are roughly 190Kb combined”

    Wrong. They’re about 110k. That said, a lot of Javascript effects are completely pointless – the Javascript equivalent of Flashurbation. Good Javascript (and Flash) developers will always consider fall-backs.

    You have to remember that everyone isn’t an amazing web developer. There are always going to be people who build HTML with tables galore. There’s always going to be people who build completely inaccessible Flash sites and there’s always going to be standardistas who think Flash is bad because Jakob Nielsen said so in 1999.

  2. Rik – I would download the latest version of scriptaculous, because the src and lib directory is most definitely around 190Kb.

    I do not consider only Flash sites are implementations of Flash – anything that is embeddable is under the umbrella in my opinion. I also do not consider banner ads as a part of the argument as they really are something entirely different. That would be like blaming the GIF for all the bad banner ads made with GIFs. Honestly, I think I was unclear about my statement that there is more good Flash than bad, but my statement stands.

  3. Hi,

    I think that the main problem of most ‘anti-flash’ is that they didn’t know how using it or they are afraid of Flash because they don’t know how to used it properly.

    Personnally, I prefer to deal with one plugin that having to deal with browser-compatibility for css/javascript. I agree that not everything is well defined to be done in Flash but, I the kind of guy that will work on ‘positive side’ instead of negative. Flash has powerful capabilities that few developer used.

    Take a look at the latest version of 2advanced site, it is amazing. Don’t just look at it and judge it, play with it. You’ll find cool features for sure!

    As internet speed is always growing, as rich media site are cool like YouTube, nobody can say that Flash has not his place in the web.

    I try as much as possible to work with standards but I also know that too much is too much. Don’t forget that, like Flash, standard has good and bad point. I’m working for a company, have to give the best of my knowledge and honestly find that javascript is a real pain in the ass, not because of javascript code, but more because of browser compatibilities. I’ve got delay and found that most of the time, browser-compatibilities are eating my time alot!

    So, to conclude, there is no perfect solution but at least, we have to take the positive of each tools we have!

  4. P.J. – you’re right about script.aculo.us, I’m actually amazed how bloated it has got since last time I used it (and that was only about a month ago). There are much better options out there for JS libraries, such as jQuery and Mochikit.

    Steve – it sounds as if you’re being lazy. As if you can’t be bothered to work with CSS and Javascript, so you’re taking the easiest way out. 2advanced is possibly one of the worst sites I’ve seen. Ever. Whilst it is technically accomplished, it’s the most overblown, bloated, and downright silly sites there is. Flashurbation at its highest.

  5. >>I want to make clear my support for web standards, usability and
    >>accessibility. Additionally, I understand the concern with Flash – it is
    >>not as easy to make accessible compared to HTML/CSS, it has, and continues,
    >>to be used for some really stupid things, etc., etc., etc.

    You say you support standards, but you completely miss one of the main reasons so many developers are against Flash: it’s proprietary. You gloss over this fact like it’s some sort of philosophical nerd talking point, but it’s not: it has very real effects.

    I can write HTML, CSS, JS, etc. in any of the million text editors out there. I can write Flash using a single program, controlled by a single company (ok, I admit that’s not 100% true, but it basically is). If I want to develop Flash, I have to give money to that company. If that company decides that it’s in their best interest (ie. it would make them more money) to negatively impacts the web development community, there is zilch that we can do about it. Until Macromedia opens up the format, Flash is going to face huge resistance from the web development community, and that’s a Good Thing ™.

  6. Jeremy – Frankly, I do not think I am. Name one quality rich media delivery layer on the internet which is not proprietary? Essentially, you are arguing that if something cannot be done within the means of HTML/CSS/Javascript, we should just throw up our hands and quit since we’d have to use a proprietary product. If it can rationally be done with open-source means, then of course I would agree that’s the correct route. However, (not to beat a dead horse) how would you suggest delivering video or audio across the web then?

    For a proprietary technology, Flash is making excellent strides. We have an open source Actionscript compiler, Adobe seems to be flirting with having a more open Flash player and Macromedia/Adobe allow use of Flash Media Server for personal use/development. Once again, it is not perfect, but name another rich media technology that does half of this?

  7. nice post. it’s great to hear flash use explained from your standards/usability perspective. in my experience, flash developers not only don’t care about that stuff, they’re defensive about not caring.

    the “Please, try to make this with HTML/Javascript. I’m waiting…” adobe microsite doesn’t load for me in safari or firefox in tiger with flash 9 (i get a white page with gray dots). i guess i’m waiting too.

    what i continually run into is a client who had a beautiful flash site made for them but now they have no idea how to edit it themselves. a good tableless xhtml site is pretty straightforward for the layman to edit content and doesn’t require them to buy flash.

  8. beckley – I totally agree with you – the Flash community’s equivalent “non-standaristas” need to wake up and notice the platform they are ultimately developing for. If they are making Flash apps for phones, web standards are not an issue. However, for the majority of folks working in the web environment, there is no excuse to ignore web standards.

    As for the Adobe site, those dots are the preloader (I’m grinning due to the irony here). Honestly, I would take the time to look at it, the amount of art and content in the site will no doubt blow you away.

    I think there needs to be more writing about updating Flash sites because my colleagues and I have been creating Flash apps that are updated through through a CMS for years. It is not difficult anymore, even a simple text editor will allow you to update a well-executed Flash application that uses XML for data.

  9. >>Essentially, you are arguing that if something cannot be done within the
    >>means of HTML/CSS/Javascript, we should just throw up our hands and quit
    Not at all. Let’s look at what we supposedly “need” Flash for:

    >>Advanced visualizations
    >>Advanced motion treatment
    >>Physics engines
    First off, can we safely assume that these are simple/small applications? Because I don’t know anyone trying to port Quake 3 to a webpage 😉 If so, then check out http://www.uselesspickles.com/triangles/demo.html for an example of JS-based 3D rendering. If DHTML can do that, I’m sure it can handle the 2D needs that most sites have.

    >>Projects where visual typographic control is paramount
    There’s font embedding, and if its limitations bother you there is always SIFR.

    >>Video or audio playback
    Pick a standard format like mp3 or avi and embed it on the page

    >>Video or audio recording through a webcam
    Streaming is about the only thing I’m willing to admit we NEED a proprietary implementation for at the moment (and even then, I’d imagine there’s some way to do it with Java applets).

    >>Rich-media browser based games
    DHTML

    >>All of the above occurring simultaneously
    A combination of all of the above.

    Web developers need to use a variety of tools to make rich media applications, I admit. Using DHTML is not as simple as Flash, maybe not quite as efficient (processor/memory-wise), and maybe even somewhat larger in terms of filesize (though I found your example of using two major JS libraries annoying; most of these libraries have a way to leave out the stuff you don’t want, and even if they don’t you can always do it yourself). But all those obstacles can be overcome by us web developers, whereas opening up the Flash standard is something that only Adobe can do.

    Now I think that’s a lot more likely to happen with them than it was with Macromedia, but I’m not going to hold my breath. DHTML/SIFR/Embedded Files can accomplish a lot more than you seem willing to admit; just because Flash is a little easier doesn’t make it better.

  10. While I agree with points from both camps, the only major drawback to creating sites in flash is the fact that screen-readers can’t get them! This is one of the main reasons for “accessibility”, to allow people with disabilities to “access” the same information as non-disabled people.

    So while flash makes stunning visual presentations, and keeps it all under one plug-in, to be truly accessible with flash you have to do twice the work in screen detection and mutiple versions.

    Seems like a lot more work to me.

  11. Jeremy – I see what you mean, but come on. 🙂 When I say advanced, I mean ADVANCED. That example you showed is cute, but honestly, it cannot even come close to this or this. Off the top of my head, Digg Swarm is another good example. Honestly, go to The FWA and look around for a couple minutes. It’ll give you more than enough examples of why Flash is used…

    As for games, I’m not talking about checkers, I’m talking about massive multiplayer online games.

    For video and audio playback, it is still going to put a proprietary player in the HTML to play it. Honestly, there’s a reason why ALL the online video sites use Flash. It’s not because they’re trying to piss people off, it’s because it is far and away the best choice for delivering video.

    I think you’re playing devil’s advocate to some extent. I respect the direction you’re going in, but you’re trying to fit a square peg into a round hole.

    Craig – If the data is residing on a backend or in XML, that data could easily be output in a static form for screen-readers on an alternate page. I think this is something that should be done much more often.

  12. The decision to use any technonlogy, be it Flash or Ajax, or DHTML etc…should be based on the specific project, client and end USER expectations), budget issues, and to a certain extent the designer’s knowledge

    ……….AND NOT on the designer’s personal feelings.

    I’m all for web standards. I’m also a big fan of flash in certain situations. All depends on the project. Purists on either side of the fence have got it wrong in my opinion…and just shows me that they need learn some market research skills.

    I’ve devoted a lot of time to learning web standards and flash. As a web proffessionl..i feel it’s my responsbility to do so. What I am getting tired of…and this is directed at you standards purists out there…is the elitism you folks seem to have taken on. CSS, AJAX, XHTML etc etc…all very good things. Not the only things. You are not the only experts out there who are the only ones ALLOWED to make websites. Just one type of expert.

    There is good flash and bad flash. Same can be said for css based sites. So both camps need to get over themselves.

    Finally… all we are talking about are TOOLS. Flash, css, dhtml…they are just tools much like a hammer and nails. They don’t make the designer. Some of you should remember that.

  13. Ok, but are we missing one main point here?

    What about Search Engine’s? I’m not going to pretend to be an expert about it, but I’m pretty sure spiders can’t crawl flash sites as of yet.

  14. Kenny – There is a very simple option for that – you put the main content you would like to have indexed in HTML and inject the SWF on runtime with Javascript using SWFObject. For clients not running Javascript (such as search engine spiders), the content persists and can be indexed – for the 99.9% of browsers with Javascript enabled, the HTML is replaced through the SWF injection process. We did this on a project I worked on recently. This is very common and is used quite frequently – I am a little surprised more people do not know about it.

    Another thing to take into consideration is the vast amount of embedded Flash widgets within an otherwise standard and searchable HTML page – the entire page is your run-of-the-mill HTML except for the areas that need to be in Flash (see YouTube, Current TV, Revver, etc, etc, etc, etc.). If you are dealing with a game, video or some other form of mulitmedia in a non-written-language form, how is a search engine going to index that to begin with?

    I will say it again – if something can be done without Flash (regular copy, basic navigation, etc.) then do not do it. I am not suggesting we switch the internet to Flash – I am simply saying for those things that cannot be done (well) by HTML/CSS/Javascript, Flash is the correct (dare I say standard?) option.

  15. I was about to respond to one of Rik Lomas’s comments but then i read Rex’s comment and I can rest my case on his points exactly, nice article Some Random Dude.

  16. “With Flash you have a plugin in which nearly 100% of users have at least some version of the player on their system.”

    This is simply not true. I’d love to be able to have the player on my system, but Adobe doesn’t make a player for my OS/browser configuration. So basically if your site requires flash, I can’t see it, no matter how many times you send me to Adobe’s web site to download “the latest player.”

    It’s time for Adobe to release the source code to the Flash player as open source so that it can be ported to all operating systems, if this technology is going to be ubiquitous. I think it’s dangerous to allow a corporation such as Adobe or Microsoft to dictate to everyone what operating system or browser platform we should be using. By requiring Flash or some other closed “standard” you are effectively allowing these companies to dictate what OS you put on your computer and how it is to be configured.

    My personal experience with websites that have Flash, when using other people’s computers, is that it is being done simply to provide eye-candy navigation that could have been done using CSS or not at all. Why I need to have Flash just to find the location of a restaurant or see their menu is beyond my comprehension.

  17. Gil K – Well said. I’m in the same boat.
    I personally prefer to browse with flash disabled, then enable it for the sites I need it. But for the last 2 years, have not been able to install flash thanks to Macromedia not supporting my HARDWARE. If 64bit processors have been out for 2-3 years, why isn’t the 64bit plugin?!!

  18. Gil K. your opinion is outdated and… well fix your PC.

    Do you know what this means?
    http://www.adobe.com/products/player_census/flashplayer/version_penetration.html

    You are outside the crowd. By the way you probably have a 800×600 resolution, do upgrade to 1024×768 ate least.

    FWA is showcasing the best websites in the world. They’re not just eye-candy navigations. Call it THE new level of experience and interaction.

    Furthermore it’s now 2009 soon it will be 3 years after this post appeared, and yes google has already developed technology to index flash. And you may generate XHTML with everything your flash is loading behind the flash visuals. Check the “Silex” project just an example.

    Flash takes us out of the “square” world of HTML. (Sorry somerandomdude your site is really squary but I do like it)

    As some random dude said, get over this, flash kicks ass and so does the rest. Use all the tools you have at hand to make your great sites.

    Flash, is from what we have in the internet, the closest definition of the internet of the future.

  19. you can define xml tags and code an ouput for it in as3.
    then you will have a standardisation like HTML.
    in this case there would be no more search engine problems.
    the question is if you want and if it makes sense.
    because this would mean that there’s only one swf. published by 5 diffrent companies. just like a browser. the difference is that you write applications and not script for an interpreter. you take away half of your tools.

    you have at least one big advantage with flash:
    you can publish on all platforms and all browsers.
    im getting a headache when i have to use css or js hacks for ie.
    i doubt the existence of standardisation.

    ok go drupal yourself.

  20. CalDude, are you aware that the Gordon JavaScript Flash Player has the functionality equivalent to Flash Player 1? Do you expect that player bearing the functionality of Flash Player 1 to replace the actual Flash 10? Also, if it reaches Flash Player 10’s functionality one day (if possible) the actual Flash player 10 will be Flash Player 20 by then, and will do things you can’t imagine yet.

    In that little javasript player even a simple tween consumes a ridiculous amount of CPU processing, it’s not efficient, just like those html pages with nice Jquery tweens pushing the processor to the top.

    You can get some nice light animations on the iphone though… 🙂

Leave a Reply

Your email address will not be published. Required fields are marked *