Adios Flash

When I first cut my teeth as a web designer in the late 1990s, the web industry was mired in the first round of the “browser wars”, with Netscape Navigator pitted against Internet Explorer for market dominance. Netscape and Microsoft tried to outdo each other by enhancing their web browser with proprietary features and HTML elements that were unavailable in their competitor’s product. For developers wanting to build complex DHTML websites that worked in both Netscape Navigator and Internet Explorer the only option was to fork their code, maintaining an entirely separate code base for each browser, and essentially doubling their workload.

It was in this context that Adobe Flash (formerly Macromedia Flash, and before that FutureSplash) first came to prominence. The Flash plugin worked identically in all web browsers, offering a way free from the browser wars and liberating developers from the tit-for-tat power struggle between Netscape and Microsoft. Build once, view anywhere. Bliss! Not only that, Flash (along with its sibling Shockwave) brought rich interactive animations to the web, a temptation that was too great for web designers to ignore.

Like many other web designers I took to Flash like a duck to water, and by 2001 was employed as a full-time Flash developer. It was an exciting time to be part of the Flash community. Improvements were being made to the Flash platform at a pace that put native browser technologies to shame, and in the wake of the browser wars much of the web’s most innovative work was created with Flash. If someone referred to a site as “slick” or “cutting-edge”, you could bet they were talking about a Flash site. Sure, the Flash authoring tool and browser plugin were proprietary technologies, but that seemed a small price to pay to be at the bleeding edge of web design.

The fall from grace

Of course nothing lasts forever, and by the time I struck out on my own as a freelancer in 2004 Flash was starting to lose its shine. The web standards movement was gaining momentum in a big way, and JavaScript powered web apps were grabbing the limelight from Flash applications. Fast forward to the present day and Flash’s utility has been further eroded by the arrival of HTML5, CSS3, and other New Exciting Web Technologies.

It is not only web developers who have fallen out of love with Flash, lured away by newer, shinier technologies. Over time the general public have come to view Flash as a bandwidth hogging “skip intro” technology, and a platform for invasive banner advertisements. I too have become increasingly disillusioned with the way that Flash is used as tool for creating slick “here today, gone tomorrow” marketing micro-sites, most of which are overblown advertisements and lack any real substance. I became a web designer because I want to build websites and applications that enrich people’s lives, not shallow marketing gimmicks.

My frustration with Flash isn’t only philosophical, it stems from practical considerations too. Functionality that most web developers would consider intrinsic to the user experience is missing from Flash, or difficult to implement without jumping through hoops. When I develop Flash applications a large percentage of my time is spent trying to achieve functionality which I would take for granted if I were developing an HTML/CSS website:

  • The absence of page refreshes means that bookmarking and deep linking are achievable in Flash only with the help of convoluted workarounds.
  • Searchability is compromised by the fact that Flash content is not exposed to search engine spiders.
  • The browser scrollbar doesn’t respond to changes in Flash content the way that it would to changes in HTML content. Often Flash developers resort to creating their own scrolling functionality from scratch, which is why Flash sites often feature tiny textfields controlled by custom built scrollbars.
  • CSS support is only partially implemented, and styles can only be applied to text fields.
  • Interface conventions on which users rely are missing in Flash, for example the Ctrl+C key command won’t copy selected text from a Flash movie and instead the user has to evoke Flash’s contextual menu using a mouse right-click. And if you’ve ever tried to save an image from a Flash website to your hard drive then you will have experienced a similar moment of frustration.
  • Perhaps worst of all, Flash is excluded from the wealth of plug-n-play APIs that allow websites to interact with third party web applications (Google Maps, Facebook, YouTube and so forth). In some cases workarounds may exist that allow third party functionality to be integrated into Flash applications, but once again Flash developers are required to jump through technical hoops to achieve functionality that is available to everyone else with virtually no effort.

Apple v Flash

I can’t talk about Flash’s decline in popularity without mentioning Apple’s role in its vilification. It wasn’t until Apple chose to omit the Flash Player from its iOS devices that anti-Flash sentiment truly crossed over into the mainstream. Steve Jobs’ threw fuel on the flames in April 2010 when he criticised Flash for being an insecure, buggy, closed platform.

I personally think Apple’s decision to exclude Flash from iOS devices was motivated as much by economic incentives as it was by performance and security considerations – the ecosystem of free online Flash games poses a direct challenge to Apple’s app store – but that is beside the point. By banning the Flash Player from their devices Apple have pushed the Flash debate into the public consciousness, and made Flash an untenable proposition for many website owners.

The impact on my own business has been tangible: during the past year almost every project brief I have received has stipulated iOS compatibility as a mandatory requirement. Most of my clients own an iPhone or iPad, and understandably find it unacceptable if their website doesn’t function in mobile Safari.

So long and thanks for all the Flash

All these factors make the case for developing a site in Flash extremely difficult to justify. Sure, Flash still has a place – creating web based games, for example – but for the vast majority of websites native browser technologies simply make more sense.

So at the start of the year I decided it was time to stop offering Flash development services to my clients. My decision to ditch Flash should come as little surprise given the negative publicity that has surrounded the Flash platform the past few years, and frankly I should have pulled the plug sooner. Nevertheless, Flash has been a part of my toolbox for over a decade, and until a few years ago as many as half the sites I developed were built in Flash. So for me it is kind of a big deal.

The sentimentalist in me is sad to bid farewell to Flash, but for the most part I am relieved. For far too long I have been sitting on the fence, advocating open web standards on the one hand, while continuing to build Flash sites for many of my clients. With Flash out of the picture I can devote myself to what I’m really passionate about: building websites using open standards and native browser technologies.

3 thoughts on “Adios Flash

  1. I have found myself in the same situation. I spent several years developing Flash websites and used the experience to develop an understanding of first ActionScript and then Object Oriented Programming (proper). Although I was always satisfied with the content and user experience, I found myself building increasingly more involved Flash alternatives to address users and devices that did not support the plug-in.

    With the growth of the mobile market and an increasingly polarized audience for Flash content, I found myself building sites with less and less reliance on it. Even more recently, I find myself building sites that have no flash at all (with the exception of YouTube embeds or solutions for playing video in older browsers).

    Flash is not the web-villain it has been made out to be. It served a massive community for many years and allowed video to be delivered faster and easier to a wide audience on the internet. Flash is an example of evolution. It did things well for the time it had and now it’s time for the next influencer to enter.

    Great post!

  2. Jonathan says:

    @Chris Thanks for the thoughtful comment. I’m also very grateful for the education ActionScript gave me in programming. Like you, it was via ActionScript that I first encountered the concepts of OOP.

    It will be really interesting to see how the future of Flash pans out, but I suspect that Flash’s demise is innevitable. Flash isn’t really a part of the web design/development conversation anymore, and from what I’ve observed the Flash community has become increasingly isolated.

    I imagine that a new web designer coming up today would have very little exposure to Flash, whereas ten years ago Flash was front and centre – it was impossible to ignore.

    Adobe are trying very hard to argue that Flash is viable in the mobile sector, and from a technical perspective I think they’re right. But as far as mindshare goes, Apple has already won over mobile app developers. Will we ever see a phenomenon as successful as Angry Birds developed in Flash for Android? I suspect not.

  3. juan says:

    I miss you too pretty flash and especially the freedom it gave me to put the items on the canvas I explain better how rich he was almost as illustrator design by using vectors but we have to adapt to the new adobe hopefully give us a surprise and do not let it die greetings from Colombia

Comments are closed.