Adios, Flash Player! (or How I Uninstalled Flash Player and Got Away with It)

When I worked at Adobe, people would often tell me they knew of Adobe because "that's the thing that is always telling me I have to update on my computer." Those comments have echoed in my mind of late after the release of 3 security updates for Flash Player in February 2013. Now here's the thing: I appreciate that Adobe takes pains to plug the security holes discovered in Flash Player and in this sense, these updates are a good thing. Additionally, I know that Flash Player is one of the most widely distributed pieces of software in the world and as such it makes sense that it would be a popular attack target for the bad guys out there. And finally, I know that making perfect software is simply impossible. Still, it's an unavoidable fact that if Flash Player didn't have these security holes in the first place, it wouldn't need all these security updates.

When I mentioned on Facebook my perturbation with having to install these frequent Flash Player updates on my MacBook Air (every time I install a Flash Player update, I have to restart all my browsers which is inconvenient), my friend John Mason suggested I simply remove Flash Player, saying "you'll be surprised how many sites have already moved on." And so I thought about it: I do a lot of web browsing on my iPad and I essentially never have issues with my web experience as a result of the lack of Flash Player on the device (and of course, it's worth noting that it is precisely this lack of Flash Player on iOS devices that is the reason why many sites have, in John's words, "moved on" from Flash content). So I realized maybe I could live without Flash Player on my MacBook Air--and when I thought about the fact that on my MacBook Air, Flash Player has a tendency to use up massive amounts of resources for no apparent reason (don't get me wrong: I know this issue isn't entirely Flash Player's fault but that in fact the developers of the Flash content delivered to my MacBook Air have a role in this issue too--but it doesn't matter who is responsible for the issue, what's pertinent is that the issue exists), it became pretty clear that John's suggestion seemed to have a lot of merit.

And so I uninstalled Flash Player. But I also have Google Chrome installed on my system and Google Chrome has its own built-in version of Flash Player so I had to disable that instance of Flash Player too (disabling Flash Player in Chrome is as easy as browsing to chrome://plugins and selecting the Disable link in the Adobe Flash Player listing on the page).

And how did my web experience change? For the most part, it didn't: as I mentioned was already the case with my iPad, by and large I can use the web just fine without Flash Player. Every now and then, I have to use a little deception to make that happen (don't worry: I'm only deceiving servers, not people!). Let me explain: I've noticed that YouTube will sometimes tell me that I have to have Flash Player to view a video (it's my understanding that this has to do with advertising but the reason isn't of any actual importance so I'm not going to look into it further)--yet these same videos work just fine on my iPad. Why is this the case? Well, without doing all the work required to be able to give a definitive answer, I'll give an answer in which I have complete confidence: YouTube knows that I could have Flash Player on my MacBook Air if I wanted to but on my iPad, Flash Player cannot be installed; accordingly, YouTube tells me on my MacBook Air to install Flash Player but on my iPad it simply serves up an alternative format of the video. So where does the deception come in? I installed the User-Agent Switcher for Chrome extension to Chrome and that allows me to set Chrome to "masquerade" as another browser; when YouTube tells me that I need to install Flash Player, I simply use User-Agent Switcher for Chrome to have Chrome masquerade as an iPad and I'm able to view the video I want to watch just fine in Chrome. So far I've only done this for YouTube but I expect I'll use this same trick from time to time for other video sites.

So great! But it's all well and good to trick a site into giving me another format of a video but let's say some part of a site's functionality is in Flash and there's no alternative functionality I can use; if I need to use that functionality, what do I do then? The great news is that enabling the Flash Player plug-in in Chrome is just as easy as disabling the Flash Player plug-in: you simply browse to chrome://plugins and select the Enable link in the Adobe Flash Player listing on the page; the changes take effect immediately without Chrome needing to be restarted. So if I need to view any Flash content, I just enable the Flash Player plug-in in Chrome and when I'm done with my need for the plug-in, I again disable it in Chrome. Since you can do this same thing for any plug-in, I recommend disabling other plug-ins in Chrome you don't expect to need frequently. On my MacBook Air, I disabled the Java plug-in Chrome in addition to Flash Player and I recommend you disable the Java plug-in in Chrome too: chances are slim that you'll have greater need for Java than you do Flash Player so you may as well turn it off and preclude it using resources and creating security holes (I'm not giving Java top billing here because I didn't actually go to the point of uninstalling it from my MacBook Air completely...yet!). If you're on Windows, the same holds true for the Silverlight plug-in in Chrome.

Let's say you don't currently use Google Chrome: what then? Well, install it! You don't have to use it all the time: you can keep it on "standby" and use it only when you need a browser with Flash Player. Now, I personally do use Chrome as my main browser because it won me over with its ability to sync bookmarks and open tabs across devices and perhaps you too will find this capability makes it worth giving Chrome a look.

One other thing I recommend you do while you're adjusting Chrome's settings is set the Plug-ins for "Click to Play" (browse to chrome://settings/content and choose the "Click to Play" radio button on the page); this option precludes any plug-ins from running content unless you specifically click on the area for the content (you can do a similar thing in many other browsers; I leave it to you to search out the details for your browser of choice). With this option on, Flash content, like all plug-in content, won't play even with the Flash Player plug-in enabled unless you click on an area for Flash content (thereby expressly indicating you want that specific content to play); this gives you granular control over Flash content at such times as you do choose to enable the Flash Player plug-in. So why not just use this and not disable the Flash Player plug-in? First, I just don't want Flash Player there at all where it can use up resources (though I suspect that with "Click to Play" set for plug-ins, Flash Player wouldn't use significant resources). Second, I want my browser to tell sites I don't have Flash because that way they'll send me any alternative content they may deliver to clients without Flash Player (and remember, all iOS clients are Flash Player-free so alternative content for Flash Player-free browsers is a very real and common thing for sites to deliver).

Flash Player on Mobile Devices

I'm at CFUnited. If you're not here, we miss you!

Last night I attended the Birds of a Feather session (for those not familiar, this is a session that is a bit more of an open forum than it is a presentation) on iPhone development and those present asked me lots of questions about if and when Flash Player will be on the iPhone. That's outside my Adobe arena so I didn't have great answers for them (though I'm relatively certain that even if I did have great answers, I wouldn't have been authorized to share them). But I did do some asking and some research and so I give you:

The official(ish) statement:

We would like to work with Apple to bring Flash to the iPhone, meanwhile we continue to work towards bringing the full Flash Player to Symbian, Windows Mobile, Android and other smartphones enabling a more complete web experience.

Now, as I know that's not particularly enlightening, here are some blog posts I ran across which you may find of interest:

BlogCFC was created by Raymond Camden. This blog is running version 5.9.002. Contact Blog Owner