Flash to run everywhere: the dream is dead

Emotions are running high in the world of professional web design and development, with words such as “shambles” and “betrayal” in common use. This anger is directed at Adobe’s controversial decision to dump its Flash plugin for mobiles. Fellow RWC columnist Kevin Partner summed up these feelings in a recent blog post:

Flash to run everywhere: the dream is dead

“The irony is that it isn’t Steve Jobs’ famous hatred of Flash that has caused this turnaround – the true villain of the piece is Adobe itself. By abandoning development of Flash for mobile, it eliminates Flash as an option for most websites… Farewell Adobe. Delete.”

After years as a Flash-based developer, Kevin will save himself a lot of money by ditching it for the open standards HTML, CSS and JavaScript. This is serious stuff: designers and developers who built careers around Flash have had their skills rendered worthless, and livelihoods are on the line. Unlike Adobe, these folk still believe in Flash.

The widespread prejudice that Flash is an unnecessary hindrance to the smooth running of a browser-based web is wrong

Certainly, Flash can be abused in irritating banner ads; it annoyingly asks to be updated twice a week; and (like JavaScript) can crash the machine if poorly coded. However, the widespread prejudice that it’s an unnecessary hindrance to the smooth running of a browser-based web is wrong. Flash has enriched the web enormously with vector graphics, bitmaps, audio, video, interactivity, communications, programmability and now even 3D – today’s web would be unrecognisably poorer without it, and so will that of tomorrow.

The fact that Flash delivers all of this functionality via a browser plugin is actually its greatest strength. Adobe’s Allan Padgett discovered how to make Acrobat Reader render PDFs directly inside Netscape, showed this to Jim Clark and the Netscape Plugin Application Programming Interface (NPAPI) was born, enabling browsers to reserve onscreen space for content rendered by any compliant plugin.

Soon all browsers supported the cross-platform NPAPI, and player-based delivery became the norm: add a new function to the plugin and it’s immediately available to all web users regardless of CPU, OS and browser (and even backwards-compatible with the oldest NPAPI-compliant browsers). Contrast this with the glacial pace of HTML/CSS/JavaScript development, where designers deploy any new capability only after the slowest browsers and users finally caught up.

Ironically, the biggest beneficiary of this plugin revolution wasn’t Adobe, with its ability to render PDFs in the browser, but Macromedia, which could render Shockwave Flash (SWF). The reason that isn’t widely understood: NPAPI doesn’t only support rendering chunks of static content, but can also stream content through a persistent connection.

Macromedia broke free from HTML’s static page-based handling and brought the web to life with streamed content and, better still, such content was automatically protected because it was rendered on the fly and couldn’t be saved. Flash became central to professional web design and the natural extension for HTML. Usage exploded and the Flash player became the one plugin everyone installed. With penetration approaching 100%, developers could assume its presence – almost unnoticed it became “the world’s most pervasive software platform”, with greater reach than any individual browser or operating system.

Macromedia realised that it owned the universal online runtime, and decided to bring to the web the sort of interactive computing experience you could only then get on a desktop PC. In 2002, it released a white paper by Jeremy Allaire that floated the idea of the Rich Internet Application (RIA). Flash would no longer merely extend HTML pages by embedding multimedia content: the player would become the “rich client” supporting standalone, browser-hosted applications that enabled users to do stuff, not just see stuff.

A RIA could be anything from flipping an online magazine page to a virtual shopping mall, from videoconferencing to word processing. This up-shift from add-on to rich client was a major undertaking, and extending the web into a ubiquitous computing platform would step on some important and sensitive toes. Macromedia needed far more serious backing and, after failed talks with Microsoft, in 2005 it was acquired by long-standing rival Adobe.

Adobe extended Flash’s capabilities into its Creative Suite, the open source Flex framework and Flash Builder IDE. In 2008 it launched the Adobe Integrated Runtime (AIR), which made it possible to run Flash-based RIAs offline on a desktop PC.

Nothing but the web

After Adobe, the company most interested in making the web into a universal computing platform was Google. The ability to work well with plugins with improved security, standardised rendering and separate execution was central to its own Chrome browser – features that Google made available to other browser developers via its Pepper Plugin API (PPAPI). It even merged the Flash player directly into the Chrome runtime. The web itself was going to become everyone’s computing platform, and current heavyweight operating systems such as Windows and Mac OS would effectively become redundant; with data and applications handled in the cloud, the OS was needed only for loading the browser and the rich client.

In late 2009, Google announced plans for Chrome OS – a stripped-down, web-only, cloud-focused operating system aimed at netbooks, desktop PCs and a new class of handheld, touchscreen devices called tablets. By the time Google finally released its promised “Chromebook” in June 2011, response was muted. The advantages were clear enough: low-cost and maintenance, fast boot-up, security, and ubiquitous access to your cloud-based content that was easy to share with collaborators and was automatically backed up. The problems were just as clear: who in their right mind would choose ugly-looking and underpowered web applications over smooth, fast native desktop apps?

Leave a Reply

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

Disclaimer: Some pages on this site may include an affiliate link. This does not effect our editorial in any way.