Freedom of Choice
There have been reading a lot of articles lately on the fight between Apple and Adobe over Flash on the newly renamed iOS, the operating system that runs iPhone and iPad. Almost every article, seems to make the story a little more sensational than it is, and in doing so clouds the issues. Here are three points that get missed in the fray. The bottom line?
Flash and HTML5 Are Not True Competitors
Flash is known as an animation tool, and so it makes sense that the new graphics and animation capabilities of HTML5 would put it at odds with Flash. Although Flash started out as an animation tool, today it is a fully-fledged application platform. Apple is positioning itself as a champion of open web standards (HTML5) making a stand against closed, proprietary Flash. In fact, Apple is protecting its own proprietary iOS against one of its major competitors.
Flash is not a true competitor to HTML5, but it is a beachhead for those seeking to resist Apple's total control of their iOS platform, here's why. The idea behind Flash is that a developer can write an app and deliver it to any browser or device that supports the Flash platform. That is over 97% of desktop and laptop computers. Flash has a sister technology called Adobe AIR that allows you to deliver that same app as a native application that doesn't need to hosted by a browser. This means that if Apple allowed Flash on the iPhone and iPad, developers would have a way to write apps that didn't have to go through Apple's arbitrary approval process. These apps could also provide a gateway for delivering content, currently only available via iTunes, depriving Apple of revenue from app and content sales, not to mention revenue from the new iAd.
With the roll out of the iOS4 beta, came a new new developer agreement, containing the infamous clause 3.3.1. Which effectively stops developers from writing apps for iOS in anything other than Apple's own XCode IDE. That is an unusual move in the software world, and tightens Apple's control over every aspect of the app lifecycle, this would make it hard for developers, or anyone else, to negotiate with Apple.
HTML5 Is Not Ready
HTML5 is the future of the web, but it is not its present. Everyone is excited about HTML5, including Adobe, but if you read the full spec, which I have, you will find that HTML5 is still a work in progress. For that reason, browser vendors don't yet support all the features of the spec, and if they do, they don't do it in a predictable way that will work the same way for every user on every platform.
For example, I recently tried rewriting a Flash media player app that I had previously written in ActionScript, Flash's programming language. JavaScript and ActionScript both adhere to the ECMA specification and so there isn't much work required to make the switch. But the project came to a grinding halt when I discovered that Firefox only supports OGG audio file playback and not MP3. I would have to re-encode an audio library that took years to assemble to run the app, when the common file format of all audio on the web is already MP3.
There is another element to this too. As the graphic at the top of this post shows, Safari is the only browser allowed on iOS and there is no plugin support, this gives them the power to control what you see and how you see it. This is a not so "open" web. In contrast, Google's Android currently supports 4 browsers and Flash.
Adobe Has More To Gain From HTML5 Than Apple
In a recent interview Kevin Lynch, CTO of Adobe, gave a response to Apple criticisms. You can watch it yourself, and draw your own conclusions. But I will say this, Adobe has open-sourced a lot of code around the Flash Platform and started the Open Screen Project which is a collaboration of over 70 other companies. The Wall Street Journal estimates that only 5% of Adobe's revenue comes from Flash, Adobe makes almost all its money from selling tools. There is a huge opportunity for Adobe to bring some of the great tooling they have developed for Flash to the HTML5 space and the new versions of CS5 prove that. So Adobe has more to gain from HTML5 than anybody. Kevin Lynch has also stated that Flash's role has been to fill the holes around the limitations of HTML. As cool as the new features of HTML5 are, by that definition, there is still plenty of room for Flash and the superior user it experience it can deliver.
It seems Apple is not against Adobe specifically, but rather against anyone who has the capacity to challenge their total domination of the platform. So here's the question...do you want to be controlled, or do you want freedom of choice?


