Google, following other browser manufacturers, has effectively killed Adobe Flash. Flash, while providing a user interface friendly to designers, was the source of multiple problems on the web, most of which impacted web sustainability.
There’s a nice summary of the issues at Yahoo! Finance:
This is big news since most advertisers have clung to the Flash format, even as warning abounded. Today, lots of those advertisers are desperately scrambling for developers to re-do their ads (which is good for web design and development). A legion of Flash game developers join their unhappy group.
So, how did Flash become dead? The main reason was that in its later days Flash reduced web sustainability, even though at the start it was the sustainable alternative. We’ll see how this happened below.
Note: GUI images are from http://code.tutsplus.com/articles/a-nostalgic-rummage-through-the-history-of-flash–active-6733
When Flash Was Sustainable…
Originally, Flash was designed for basic timeline animation. FutureWave Software created the first tool in 1995 that resembled Flash today, and called it FutureSplash Animator.
In contrast, Flash offered a universal authoring environment similar to ones that animators were already familiar with, and worked nearly the same on all web browsers.
Another feature of Flash which made it popular was that you could work in the GUI without having to learn nasty HTML code. In this, the interface of Flash resembled other “timeline animation” tools like Director, Adobe Premiere and Adobe Aftereffects (not to mention Avid and other tools). The result was that a designer used to “old media” techniques for animation and motion graphics felt comfortable using Flash, and could to some extent avoid the “interactive” nature of the HTML-based web in favor of “total control” over their design. And the typical Flash Movie was much smaller than the Shockwave equivalent, so it was a no-brainer for creating non-HTML based multimedia.
Now the medium is the message. The similarity to these other tools meant that Flash was used, from the very beginning, to create user experiences less like the web and more like television.
Flash Becomes Dominant
Cross platform support, coupled with the ability to create “exciting visual experiences” caused Flash use to grow rapidly, especially on high-end websites. By early 2005, Flash was the dominant “rich media” platform for the web. Anyone who wanted to build web-based games or motion graphics on websites used it. At the production and development level at least, Flash reduced the carbon footprint of fancy web-based interfaces, which would have required separate authoring for Netscape, Internet Explorer, and (later) Safari. Even with the problem of HTML4-based embedding in browser windows, Flash was a cross-platform win for rich media.
The result of this success was that Macromedia was grabbed by Adobe, a decade after they had rejected it. Adobe focused on making Flash operate like other tools in Creative Suite, and Flash CS3 had ActionScript 3, a true OOP development language looking a lot like Java and C#. The tight integration of Flash visual design with scripts made it practical for “unicorns” – designers with strong development skills – to create elaborate games and interactive experiences without a specialized team of designers and developers.
Flash Runs into Disability Issues
(or rather, Flash designers ignore the issue)
Right at its triumph, problems emerged which greatly reduced the Flash contribution to a sustainable web.
First, Flash-based websites could not be used by people with disabilities. One advantage of HTML was that screen readers would use it, so blind people could navigate the web by sound. Not so with Flash! A Flash-based website could not be used by people with sight problems. Now, this wasn’t the fault of Macromedia. Flash 6 had accessibility features as early as 2002, which allowed designers to describe their movie in text, and support text-reader selections via keys instead of the mouse. The problem (as it always is) was design, and designers. Even though accessibility features existed, very few Flash designers (who seemed to think visual design was the only design theory that mattered) ever added the necessary meta-data to make their sites accessible.
The result was that many websites using Flash remained inaccessible to the disabled. By 2005, years after accessibility was added, there were lots of lawsuits aimed at Flash websites. Ramada.com and Priceline.com were successfully sued for $US40,000 and $US37,500 respectively. This lawsuit trend built until 2008, when Target.com paid $6 million dollars after losing a lawsuit over access to their website. It should be noted that the Target site had HTML problems (lack of “alt” tags in images) as well as Flash issues, but Flash remained a major factor in blocking web access to the disabled.
Flash and Bad User Experience (Ux)
At the time, I remember the bitterness of Flash designers being “called out” by the blind. This anger points out the other problem with Flash from a web sustainability viewpoint.
Web sustainability requires designing for the audience, and making sites as usable as possible via a customer-centric focus. In contrast, the visual design tools of Flash encouraged building websites with (1) Fixed widths and heights, and (2) freeform location of design elements similar to what graphic designers do in Illustrator and Photoshop. These features allowed many non-web designers to get a toehold into web content without learning the dreaded HTML. But it also encouraged a “design for the designer” mentality which runs counter to web design theory, in particular User Experience, or Ux principles.
As an example of designer-centrism in Flash, consider buttons, a basic interactive control on the web. There were several ways to create a clickable button in Flash, and no default standard. Designers, focused on their own aesthetic, created nonstandard buttons that many people had trouble understanding. The confusion of the viewer was justified by the designer’s “vision.” To the degree that millions people were confused and slowed down using Flash sites, this “artist-centric” design increased the carbon footprint of the overall Internet. Flash was tipping into unsustainable territory.
Now, HTM5 has its own problems here – not all browsers render buttons and forms the same. But this is seen as a problem in the HTML5 dev community. In contrast, the lack of standards for Flash wasn’t a bug, it was a feature enabling “anything goes” design for self-styled “creatives.”
Remember that the Internet is embedded in a larger ecosystem – it isn’t just the electricity used by computers and routers. If users waste their time solving interface puzzles, or viewing animation that doesn’t help them solve their problems, they typically they also waste energy. This becomes indirect component of the website’s carbon footprint. So, an often militant disregard of Ux by Flash designers in favor of “amazing visual experiences,” made the web harder to use.
One example of “designer-centric design” encouraged by the Flash design tools was the “splash screen.” Many Flash-based websites featured opening animation sequences, often having little or nothing to do with the actual website. The main purpose of these splash sequences was to “wow” the audience, or more correctly, the client. Apparently, the designers viewed the public’s role as “being wowed” by the creatives. In practice, all that splash screens did was slow down access to the site and burn a few extra electrons flickering to screen. I’d love to see an example of a mid-2000s Flash splash screen that did anything else.
Flash designers, emboldened by their “freedom” within the Flash GUI, created user experiences that were inferior to HTML-based web apps. This was known in 2003, and hardly news today.
Of course, there were many outstanding Flash designers who made usable websites and highly playable games with Flash (along with disability support) but they were the exception. The majority of the Flash gurus seemed to hope that the Web itself would be replaced by a mix of Flash and Acrobat. In 2003, it was even possible to proclaim “HTML is dead, long live Flash.”
Flash SEO and Analytics Failures
The mostly willful ignorance of meta-data techniques for Flash movies contributed to another bad feature – horrible Search Engine Optimization, or SEO. Under a web sustainability framework, SEO is the equivalent of “making game trails” in the Internet ecosystem so people can find your site more easily. The trouble is, Flash movies can’t be parsed or understood by search engine spiders. Even if they somehow “ran” the flash movie, current artificial intelligence isn’t able to understand movielike content. So, a pure Flash-based website was (and is) invisible to search engines.
The problem also extended to design ideas enabled by Flash. Splash screens, beloved by designers during the early 2000s, blast SEO. One of the nice things that SEO has done for design is to kill the splash screen.
In addition, as services like Google Analytics appeared, there was no easy way to move user activity data from a Flash out to the analytics without custom code.
As time went on, security experts realized that writing Flash in C++ had resulted in numerous buffer overruns, making the program a hacker’s paradise and a security expert’s nightmare. The problem was notable in that security fixes didn’t seem to help – almost immediately, a new rash of security holes would pop up, requiring that the Flash player be uploaded repeatedly outside of its normal upgrade cycle.
Many users (e.g. those where IT controlled the installation of new software) couldn’t do upgrades, and by 2009 the web was full of vulnerable browsers which could be hacked by installing the right Flash movie on a web page.
Flash Sucks Energy From Mobiles
In a related issue that went directly to web carbon footprints, Flash was discovered to be an energy hog. On desktops, the extra watts Flash added weren’t noticeable, since these platforms are already using hundreds of watts to operate. But on mobiles and smaller laptops, running Flash-heavy websites caused significant declines in battery life. The reason was obvious – if you think about the plugin model used to load Flash players into web browsers. Since embedded Flash is an entire standalone piece of software, it needed its own complete event loops, processing, and memory management, duplicating web browser functions. The results was a near-doubling of the energy needed to run a web page.
This discovery let to some of the first accusations that Flash was bad for the Earth, not just the web.
But this shouldn’t be fatal for any software. After all, current (2015) versions of Google Chrome are real energy hogs compared to (surprise) Internet Explorer, which is more efficient. The real problem was designers and developers creating energy-hog apps, some of which might run invisibly to the user for the benefit of advertisers. Websites festooned their pages with multiple Flash-based ads, running animation better suited to non-web media in an attempt to attract customers. Designers, and their advertiser clients, were the real bad guys, not the program.
Mobiles Lose their Memory
In addition, the computer’s memory allocated for Flash was not handled well by naive ActionScript designers. Since ActionScript is an ECMA language, you don’t have to de-allocate memory to avoid a crash. Without good programming techniques to cause regular “garbage collection” in ActionScript, it is very easy to make a Flash movie which grabs more and more memory. Best practices existed to improve memory allocation, but most developers, especially casual Flash designers, ignored them in favor of design constraints. Like User Experience, Web Performance Optimization (WPO) is ignored by most Flash developers, the exception those developing commercial games and (some) banner ads, where small size was at a premium.
HTML5 Provides an Alternate Open-Source Standard
One can argue that HTML5 just re-traced the development of Flash capabilities a decade earlier. Re-doing features like access to webcams is inefficient, and increased the “embodied energy” of the web by a tiny bit. But the advantage of a single browsers with these native features, as opposed to a plugin running in a simple browser, more than outweighed this issue.
Originally, HTML5 was going to be slowly phased in, with complete adoption taking until 2024. But in 2008, Apple made a bold move and based their iPhone browser on HTML5 (the standard was finalized in 2014).
Apple Zaps Flash on iOS
Due to the rise of HTML5, and continuing problems of Flash security and energy use on mobiles, when Apple released the iPhone it barred Flash Movies from running on under iOS. In a famous letter, Steve Jobs said he wouldn’t let Flash near his brainchild. At the time, many made prophecy that Apple would be forced to accept Flash. In reality, the arrival of the iPhone was the beginning of the end for the SWF. In 2012, Adobe dropped Flash Player for mobiles, meaning that Android devices, which had allowed Flash up until late 2011, also moved to the alternate HTML5 standard. More recently, YouTube switched from the Flash player to HTML5.
Flash Advertising Slows the Web to a Crawl, Anger Mounts
So, the advertisers continued to demand Flash, despite constant warning from developers, design shops and creative agencies that the format was on its way out. As late as early 2015, nearly 90% of all banner ads were still authored in Flash, almost certainly because advertisers wanted it that way.
The continued use of Flash finally began to cause problems outside the long-running “Flash wars.” With the rise of blogs and social networks, lots of websites made money by being “superblogs” – collecting and posting content written by a variety of authors. To support themselves, these sites almost exclusively used banner ads which by 2015 covered typical web pages like an overly-eager tattoo artist. A fast website could be slowed to a crawl, almost entirely because the advertiser’s Flash ads had failed to load yet. On the Mac platform, Flash became the number one reason for browser crashes.
With the great slowdown, the general web audience began to realize there was something messing up their surfing, and that thing was Flash. Techniques appeared for users to remove Flash from all their browsers. Flash use declined, even as other new technologies for “rich media” rose, as this chart from 2014 shows:
In time, blogs with titles like “10 reasons why we hate Flash” began to appear. Facebook’s chief security officer Alex Stamos called for moves to force the extinction of Flash. There was even an Occupy Flash movement to wipe the hated plugin from the web. Hackers could be taken out by a Flash bug.
The sole holdouts were (surprise) advertisers using banner ads. Despite warnings within the ad industry, in June 2015 Flash was still used on >80% of banner ads.
Browser Manufactures Remove Flash
By late 2014, the security holes and memory problems in Flash were essentially the same they had been in 2007. Browser manufacturers realized that they were being undermined by the plugin, and that things were unlikely to be fixed. They began taking steps to remove Flash from their systems. Mozilla Firefox began blocking vulnerable Flash plugins. Google came later, possibly because of its cozy relationship with Flash-loving advertisers. And now in Sept. 2015 nearly everyone agrees that Flash is finally, finally dead.
While structural problems within Flash helped to doom it, this can’t be the whole reason Flash died. Why did a hard-to-use open standards system like HTML5 beat a slick proprietary system friendly to designers? What was the tipping point? And what can we learn from this history, in terms of web sustainability?
The first and most important is that DESIGN IS THE PROBLEM, as Nate Shredoff detailed in his great book of the same name from a few years ago.
Security flaws in Flash could in theory have been fixed. The biggest problem with Flash was not the program, but the way designers used it. Well-designed Flash movies could function effectively in the Internet’s ecosystem without confusing users or barring them from accessing content.
But most Flash design ignored customer-based design in favor of imposing an “old media” model on the web more similar to traditional animation and motion graphics found in non-interactive media like movies and television. This model was also friendly to designer conceit. To the extent that a Flash movie tried to be “mind blowing,” it zapped SEO and was WPO-unfriendly bloatware. To the extent that a Flash movie tried to reduce user interaction in favor of designer and advertiser “control” or a “jaw-dropping visual treat,” it made the web experience less sustainable and accessible.
This in turn implies that the lack of Flash sustainability was really a problem with designers and their attitudes. When a large segment of the design community used Flash to create very un-weblike experiences, Flash was already doomed. The web is its own media, just like print design and package design are media that stand alone. Media are best used when their unique features are leveraged in design.
Most Flash design didn’t leverage the web, but attempted to impose an alternate media model. The fact that support for people with disabilities were grudgingly added, if at all by designers, when the tools had been available since 2002, is a real strike against the Flash design zeitgeist.
The best proof of this is the awards for outstanding Flash design over the years. Agencies competed to create “stunning visual experiences.” These were friendly to clients’ mis-identification of the web as a bad kind of television, but ignored the public’s actual use of the web. As usability guru Jakob Nielsen put it way back in 2000,
The web is highly interactive, and the experience (digital marketing included) works more like a telephone than a television. But Flash movies allowed a subset of “content creators,” in particular old-school advertisers hooked on banner ads, to keep the illusion that old media creativity was the path to the future of the web.
And the problem didn’t faze advertisers and many high-end brands, who until quite recently created horrible user experiences in the pursuit of TV-like “jaw dropping design” (sic).
Flash was used to force what the advertisers wanted (and to a real extent, some designers) down user’s throats. A 2010 review of the Flash-based Coke Lite site provides a telling quote.
One of the worst things you can do as a Flash designer is force an introduction on your audience. A long intro and no skip button means this site is likely to be abandoned by most of its visitors before they get in. Add an unclear “Call to Action” and no visual navigation indicators and most people will never encounter the beauty this site has to offer. Long transitions back to the home screen waste time the visitor could have spent successfully “traveling the world”, searching for the numerous balloons hidden within the map.
It’s not a legacy to be proud of.
Flash game developers were also likely to care about speed, and quality user experience (i.e., “gameplay), and therefore may be less guilty of bloatware and bad Ux.
However, we must remember this is all about the designer’s experience, not the customer. A look at some user comments on applause.com shows that the complaints come from designers about their designing. It’s not that designers are unimportant, its just that the experience of the average Internet user is more important that that of the designer or developer.
Too often, Flash was used to satisfy what designers thought looked good to themselves, while ignoring the sustainability of the web as a whole.
The following quote by a Flash game developer Tom Fulp is particularly telling – he confuses web accessibility with easy learning curves for the designer:
People talk a lot about the need for more accessibility in creative industries and I think Flash was the most accessible creative tool in my lifetime,” said Fulp. “It allowed all sorts of people to animate and make games; people like me who otherwise would never have ended up where they are today.
Frankly, I suspect that without Flash, Fulp would have learned to create web games – most multi-talented designer/developer “unicorns” do just that. In a Flash-free world, browser manufacturers would have moved sooner to standards like HTML5 and developed frameworks that allowed lots of people to learn and develop games. I don’t buy his argument at all. And if Fulp is actually angry about people paying too much attention to end user experience at the expense of the designer community, there’s not much to say.
But again, sustainable design is customer-centric design. And making it easy to make amateur games with bad Ux, bloatware footprints, and confusing interfaces is not necessarily a good thing for the web experience. When you read the interviews in the link given below, it is extraordinary to see how not one of them worries about their audience. It is all about themselves, the designers, working with Flash, and their experience.
I have to conclude:
In the end, Flash was killed, not by its code, but by its enabling of designer-centric design,
at the expense of the user and the rest of the Internet ecosystem.
Back to the Future?
From today, the future will be HTML5 and native browser APIs. Admittedly, many of these new browser features duplicate what Flash had been doing all along. Some, like WebGL will extend the browser beyond anything Flash could ever do. But that doesn’t ensure that design will become more future-friendly and sustainable.
By killing Flash, we may have solved security and memory issues – but design is the problem.
One can only hope that the next decade of HTML5, now chock full of Flash-like features, will lead to better choices by designers, and create a more sustainable virtual world. Unfortunately, some of the same design errors found in Flash through the years are already surfacing on HTML5 based websites.
For a sustainable web, design will always be the real problem.