Apple vs Adobe, the battle for abstraction
Let’s start by making one thing clear: I’ve never been a huge fan of Adobe’s Flash. It always seemed to me, a necessary evil — necessary because it allows publishing on the web that can’t be done with the browser alone, and evil because it requires the installation extra software to access content.
But in the light of recent criticism from Apple, I find myself becoming concerned about the misleading way arguments are being presented. The main reason for this is that Apple’s criticism of Flash, and promotion of HTML5 seems primarily a piece of market positioning: Apple, the champions of open standards, Adobe, the peddlers of all that is closed and proprietary.
Why would Apple do this?
Well, what the Flash vs HTML5 debate does is to hide the real reason for Apple’s anti-Adobe position: Apple wants to control the web publishing abstraction layer. Specifcally, this isn’t really about Adobe at all, this is about any non-Apple software for developing content and applications on the web. Apple isn’t just anti-Flash, they’re anti-Java and anti- anyone else who wants to provide abstraction from the browser and alternative browser-based development platforms. In short, Apple wants WebKit to be your one-stop shop for web publishing on any device.
In theory this seems like a good thing, developers and designers could have one publishing platform, and one set of standards (HTML5 + CSS + JavaScript) all running under a cleanly designed layout engine developed by one of the best software shops in the world and it would look and feel the same wherever they deployed it. To top this, WebKit is even open source. This is why it is gaining traction and now used not just in Apple’s Safari browser, but also in Google’s Chrome, Gnome’s Epiphany and on a large number of mobile devices .
So what are the implications of this? Well, currently if you want your content or app to look and feel exactly the same regardless of browser, you develop in Flash. Flash provides an abstraction layer that isolates the your code from cross-browser differences and incompatibilities. Apple want’s to kill Flash and for WebKit to become the abstraction layer; it wants WebKit not Flash to isolate your code from cross-browser differences. In Apple’s world, Webkit will become the layout engine.
The problem with all of this is that by controlling the publishing abstraction layer, Apple is effectively controlling the type and nature of the content you can publish online. This is the opposite philosophy to the early evolution of the web and browser technology. Instead of being de-centralised and community driven, it looks like the future of the web will be centralised and driven by a few big companies, like Apple and Google.
I leave the reader to decide if all of this is a good thing, but end with the closing thought that the primary aim of big companies it to make money for their shareholders. Apple are not the champions of open standards Steve Jobbs makes them out to be, neither are Adobe evil purveyors of everything closed-source and proprietary. Both companies are open so far as it suits them and only where it means greater control in the marketplace and gain in market advantage.
