Not Obvious

Intended to be Interesting, Intriguing & Insightful. Most Likely Mundane.

« Back to blog

Why Do (I) People Hate Flash?

Nick Wangler (@SweetTea023) asked me why people hate Flash (no doubt referred to me by @Wygle or one of my Seattle cohorts). The answer is far more than 140 and has been answered posited and pondered by many more qualified than me. I will, however, endeavour to round out the corners of the various arguments against it and be as non-duplicative as possible.

 

Security

A very quick search on NVD shows 77 vulnerabilities for "Flash Player". Flash is an add-on for your browser; an expansion that you install (or have installed for you by an OS distribution or computer manufacturer) in addition to the base components. By default, that creates yet-another vector for attackers and even levels the playing field a bit for them since they can target multiple platforms and multiple browser configurations with roughly the same exploit. Believe me, Microsoft & Apple do not need any more help making their browsers or their systems more vulnerable to attack and we certainly do not need to give the malware writers more soft targets.

Flash is also one of the few items on my system (yes, I have it installed despite loathing it) where I actually need to hit an external site to configure it. If you've never been to one of those settings screens, they've been around in one form or another since ~2004. Even those settings could not stop a pretty nasty attack vector that Adobe had to close by removing functionality (that it should never had added in the first place).

From an enterprise perspective (the whole world does not revolve around home users), it is a royal pain to manage Flash versions across even a moderate large user-base, especially since Adobe has removed or munged functionality enough that some divisons or workgroups actually need to keep older versions installed. That means I have vulnerable target systems that I have to account for when I do a risk/threat profile. If such an institution is, say, a bank, that unpatched endpoint becomes one means for the "bad guys" to get to your data. (And, if you think that isn't likely, you have never been employed by a large financial institution).

 

Performance

Before I start this section I need to do a full disclosure: I am primarily an OS X user but have two Windows 7 boxes, a Windows 7 VM, a dedicated linux server at home, a linux VPS in Cali and countless linux VMs). I have to do that because - invariably - I will get the "you're just a whining Mac user" comment.

Flash browser performance - in general - sucks, just like Java applet performance - in general - sucks. This is primarily due to bad programming If Adobe (and before them, Macromedia) asks me to extend my browser, the least they could do would be to provide tools and a deployment process to ensure that inept programmers have to pass some sort of test before crashing my browsers (well, not Chrome, thanks to the process model Google uses, which I'll bet is due - in part - to Flash).

I know when Flash kicks in on a site because my fans start whirring, the CPU starts spiking and the batter starts draining much faster. Most Flash-heavy sites are even a dog on my Mini 9 with 2GB of RAM running Windows 7! And, forget about full-screen Flash video on linux. Adobe will swear it's not their problem, but they should have either not lowered the entry bar or figured out a way to truly optimize their code. They chose to make the plug-in and it not the responsibility of the OS builders to help them out.

 

Design

For those who have been around this Internet of ours for a while will understand the following: Flash is the modern equivalent of the <blink> tag and animated gifs. The minute I see Flash content (on a non-dedicated gaming site [kongregate/armor games] or non-dedicated movie site [hulu/youtube]), here's what goes through my head:

  • "oh, another design crutch" (i.e. the developers were not talented enough to use cross-platform HTML, CSS, graphics creation & Javascript techniques)
  • someone is attempting to sell me something

Not exactly two things I'd want associated with my site.

Granted, there are exceptions (I've seen some brilliant data visualizations in the New York Times and other sources), but in general, Flash == ugly and is there only in a pathetic attempt to grab my attention away from what I really want to see on a site (hence the continued growth of ClickToFlash usage by OS X Safari users).

 

Gatekeepers

While there may be some open source means of cranking out Flash, expensive Adobe tools are the primary means to develop these beasts and I am not fond of gatekeepers (I promise to not turn this into an iPad rant). In my infrequent programming ventures, I really shy away from closed frameworks because I do not want to be locked in. Until they made .NET a tad more open (e.g. the Mono project), this was the primary reason I stopped trying to make Windows software. While I consider myself a semi-proficient OS X developer, I loathe the fact my apps cannot run on any other platform (except the iPhone...and talk about gate-keeping!). At least Apple's tools are relatively free (I do pay for the OS, which is fine since I'm getting a much better experience than desktop linux). I can even make first-rate apps with relatively free (though a bit more expensive than Apple) Microsoft tools (SharpDevelop & IronPython).

While the majority of end-users do not care, I do and I refuse to learn Adobe's insidious incantations just to make bits fly about in a browser window. It's the same reason folks do not just make PDFs of their Word documents and put them up as web pages (and this is coming from someone who used to code PostScript by hand). Generally speaking, we want the freedom to express our creativity without lock-in which is one reason I'm really looking forward to ubiquitous implementation of HTML 5.

 

Concluding

It turns out I ranted a bit and did, in fact, re-hash some well-worn arguments. Just as it's applet, tag and animated counterparts, Flash had it's day and will - hopefully - be a fading memory as open standards start to become more rich and versatile. Until then, I will enjoy my Flash-placeholder-boxes in Safari and the blue Lego block of ambiguity on my iPhone.

Loading mentions Retweet
Feb 01, 2010
Casper said...
Ok, I totally hear all of your complaints. I think Flash has a bunch of downsides.

- If it wasn't for Flash Video we wouldn't have video online in the proliferation that we do.
- If it wasn't for Flash we wouldn't have any kind of engaging experience online. Even the majority of AJAX ideas and code snippets were first done in Flash and then people ported them to Javascript. (And Quicktime...pfft. Apple doesn't know how to do internet)
- If we all had to use languages as complex as HTML, CSS, Javascript (or AS3 for that matter) to do what you can in Flash purely within a GUI then we wouldn't have had the initial creativity that got people excited about the net. I know those first sites weren't technically brilliant but they were necessary for everyone to see what we could do on the net and how easily. Flash plays a pivotal part in democratizing the internet.
- And if you complain about design, then there's equally if not more hideously designed sites out there in HTML/CSS. It's like when Luther said every man should have the Bible to derive what they think of it, sure some nut-jobs and just unskilled people are going to make a hack of it.
- Ok if I'm a Code monkey or a Muller-Brockmann fan boy then there's plenty of HTML sites out there that are well designed but then the one's that get the common man engaged are typically Flash based because they offer a different experience.

We do need something as soft and simple as Flash 5 moving forwards, maybe the guys behind all the HTML5 and such can come up with an IDE that designers and complete noobs can use without creating code that looks like Dreamweaver. Essentially I'm a designer but I hate how much code I have to learn to do really simple, really common things.

It takes so much time to learn even how to install GIT, RoR or other things (thank heavens for MAMP) when we want to be spending our time actually making something tangible.

Flash let (and less and less so lets) us do that.

Basically Flash made the internet way more fun.

Feb 01, 2010
boB Rudis said...
@Casper: I will agree that Flash helped pull the web forward, but it's now more like a ball and chain. In terms of video, the only reason it supplanted quicktime and real player is by removing the need for a streaming server (and Real's almost complete focus on revenue over usability). quicktime is a far richer format and doesn't have the proprietary baggage of the custom codec Flash does (again...Adobe being the gatekeeper). Rather than Apple not knowing how to do the internet, I would argue it laid a foundation for the future.

I won't argue on liking Flash. Plenty of folks do and if the sites you frequent (or make :-) inspire you, then that's A Very Good Thing. We need more folks to be inspired and creative, and as long as you aren't one of the "evil Flash programmers", then definitely more power to you.

I also will agree that there's plenty of wretched HTML to go around, but it doesn't crash my browser (it only hurts my eyes :-)

I really like your call for a simplified development environment as the emerging, open web technologies start to become embraced. Just *please* don't build it in AIR :-)

 
Got an account with one of these? Login here, or just enter your comment below.
Posterous-login    Connect    twitter