Goodbye Adobe FLASH


I still remember the awe I felt visiting sites built with Flash. It’s still hard for me to come to grips with the fact that it’s over. Each site was animated, dynamic, and *gasp* cross-browser compatible!

When iOS announced they would not be supporting Flash sites, I was stunned. Why not? I guess I was blissfully unaware of all of the security vulnerabilities associated with that platform and so in love with what I could do once I learned keyframes and ActionScript. I actually believed that Apple made a mistake and that they would come to their senses. Maybe not right now, but eventually, Apple would support Flash. Adobe would make a few minor changes, lock things down, and Apple would announce support for Flash. I waited years hoping. But we all know now that Apple won. Adobe lost.

The war was over years ago. But the past few months, I’ve been desperately trying to pull out all of the flash components from my sites and replace them with something that will provide the rich user experience Flash has made possible for well over a decade. Browsers will soon ship Flash disabled by default. Touchscreen users are a growing segment. They can no longer be ignored or redirected to something static and inferior.

The most difficult piece of this transition for me has been web audio. Flash made it all too easy. Meanwhile, HTML5’s web audio component was slow to mature. Browsers could not (and still don’t) agree on a standard audio format. Fortunately for me, I’ve happily discovered Howler.js, a web audio javascript library that really simplifies creating an audio component for the browser.

It’s still not as easy as Flash was.   I have to create 2 separate files for each piece of audio I want to use (.mp3 and .ogg).  Mobile Safari will not allow audio to auto start — a button must be clicked before the browser will allow audio begin to play.  Otherwise, this library has made migrating away from Flash and over to HTML5 audio about as easy as it can be.

Leave a comment

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