How Adobe Murdered Flash

Flash has been dead for a while, and I moved on a long ago, but back in the day it used to be something special, and AS3 dev was my specialty.

There was a solid runtime, a compact file format, great documentation, and most importantly: a thriving community.

And then one day, there wasn't. Within a couple months, everyone was gone. Everyone. Everyone stopped talking about it, even Adobe employees immediately stopped blogging about it. I dare you, go find me an AS3 project that was still active after mid 2012. You won't. It was not a slow death.

HTML5 didn't kill Flash based on merit. That would've taken much longer. It wasn't ready. It still isn't.

Adobe murdered it.

In one month, all flash related projects and people I followed were gone.

Imagine...

Imagine you're a high-end web dev in 2017 working on some fantastic new experience that uses WebGL and typed arrays, features that have been out for a while. Imagine it all works consistently on 95% of browsers, and the same code compiled natively for mobile. I know it's hard, but try.

Suddenly W3C announces whenever you use WebGL and typed arrays together, they demand a 30% royalty on all revenue you make on any app you make involving javascript that uses those features. Imagine they could enforce that at all.

That was Flash in 2012.

March 2012, Adobe announced "Premium Features for Gaming", a 30% royalty for flash apps that used Stage3D (like WebGL, with better fallbacks), and optimized memory access instructions. Both features had already been publicly available for months. People had written games and libraries around them. There were large projects still in development using them.

3 months later they quietly reversed the royalty, but by then everyone had quit their AS3 development jobs and moved on to other platforms. We never heard about Unreal Engine 3 support for Flash again. I'd already ported my game projects away. And nobody trusted Adobe ever again.

Thanks, Adobe

It's a story worth knowing, because it's a good lesson in how a critical developer community trust violation killed a platform's future overnight.

They were obviously trying to copy the likes of Apple's App Store and Steam, and monetize their market share. The difference there is those platforms offered a market place and some visibility for the money; they provided a service. And those terms were more clear from when from when you first targeted those platforms. Adobe had no market place near ready. They were simply allowing you to use thin OpenGL bindings and some raw byte arrays, and suddenly expecting a publisher's share.

Really, if they had announced this royalty when they announced Stage3D it would have been fine. We could have decided to use these features, knowing what we were getting in to (it might have been worth it!), or avoided them early on. Instead, they waited until we were already addicted to them, untaxed. That's basically why the Boston Tea Party and Declaration of Independence happened. History repeats itself.

Really, it's tragic.

It's funny to consider some of the criticisms about bloat and performance people heaped on it then, considering the state of modern javascript apps. Some of the UX is better these days (linking in flash apps were awful), and maybe someday javascript capabilities will catch up (we can dream), but there are some experiences that I haven't seen replicated since. If anything comes close, it's broken on some browser or devices that Flash covered well. The potential and accessibility were really unparalleled, even now.

I'm in a better place now, but whenever I have to do web dev, I still shed a tear for Flash. Maybe now that I write this eulogy, I can finally have closure.

RIP.