Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ


Choose your language

InfoQ Homepage News Farewell to Flash

Farewell to Flash

This item in japanese

Lire ce contenu en français

Adobe Flash became the latest internet technology to reach end-of-life on 31st December, 2020, and has a built-in kill switch on 12th January, 2021. From Adobe's announcement:

Since Adobe will no longer be supporting Flash Player after December 31, 2020 and Adobe will block Flash content from running in Flash Player beginning January 12, 2021, Adobe strongly recommends all users immediately uninstall Flash Player to help protect their systems.  

Flash was used in the early days of the internet to provide interactive graphics and applications, and later as a mechanism for distributing ads, viruses, and malware, but its popularity for writing games gave it the biggest use case on the internet over the last couple of decades, in part because its vector graphics format made creating portable games easy, without having to worry about whatever the latest incompatible graphics drivers were for various operating systems. It also reached popularity by being able to play MPEG4 and H264 videos in a portable way without being constrained by the browser's own expected video formats.

Flash started out life as a vector graphics editing tool under a company called FutureWave, and subsequently added animation tools to create FutureSplash Animator. When they were acquired by Macromedia in 1996 – by which time Java had reached version 1.0 – they compressed the name of FutureSplash down to Flash and rebadged it as Macromedia Flash. It was an editor for creating animations, but more importantly, a lightweight player called Macromedia Flash Player that was able to be downloaded and run as a plug-in to web browsers at the time.

The animation technology gained rudimentary support for interactions between elements, which led to ActionScript being launched in 2000. This gave Flash a significant advantage for interactive sites when at the time Internet Explorer, with its quirks of JavaScript, couldn't be relied on to provide the same level of interactivity as Flash applications could. Importantly, the size of the runtime was smaller than the JVM at the time, which was the other competing format for interactive web pages, and because of its nature was easier for programmers to create graphical interactions with sound and video media than the JVM was.

By 2005, Flash was the dominant format for interactive sites; a ZDNet article claimed that because of its bundling in operating systems "more than 98% of computers connected to the web have flash installed". It was later acquired by Adobe and published as Adobe Flash Player, along with the suite of tools for programming and creating interactive sites.

As the standardisation of HTML5 and supported media formats grew, the advantages of Flash for providing video declined, until it was primarily used for interactive games and some interactive applications. However, Flash suffered from the same issues that had meant the JVM didn't take off in browsers a decade earlier; constant updates for security vulnerabilities meant that Adobe Flash was the primary cause of CVEs in web browsers and infections. To be fair to both Flash and the JVM, downloading programs from the internet is always going to be a vector for vulnerabilities, and the security of a remote system is always going to be as good or bad as the implementation – and as the complexity of those runtimes grew, particularly in unmanaged languages like C++ – the danger was real. Even today, bugs in image rendering pipelines or font decoding are the primary cause of vulnerabilities in browsers.

Flash's demise started with Steve Jobs' post "Thoughts on Flash" (web archive link), who had recently launched the iPhone in 2007 with "always on" internet connectivity (back then, all devices that had internet capability were dial-up; you had to explicitly choose to go online and then disconnect afterwards.) The main complaint was that Flash wasn't an open standard (unlike H264 video, which was standardised if not free) but that the practical issues of security, performance, battery and touch weren't well suited for Flash on touchscreen devices like the iPhone.

At the time, many viewed Flash's exclusion from iOS as not being able to experience "the full web" although they note that native games on iOS were available from the App Store. Competing device manufacturers were keen to point out that they supported Flash – although when Android 4.1 ("Jelly Bean") was released, it no longer supported Flash by default and is only available up to Android 4.3.

Flash's continued demise happened as interactive ads used the technology, meaning an increasing number of users simply blocking Flash as a way of having saner web page interruptions, and the increasing power of HTML5 and AJAX applications leading to a resurgence of JavaScript as the point of interactivity in the browser.

Over the last decade, Flash became a shadow of its former self, and in 2017 Adobe announced the end-of-life of Adobe Flash for 31st December, 2020. While the last year has not been what many of us expected, perhaps we can be grateful that a once ubiquitous technology that had become the plaything of advertisers and criminals alike has been finally laid to rest.

Rate this Article