In the ongoing Adobe/Apple debate over Flash and its place in the mobile web, a curious term has been invoked by both companies: Open. Apple cited “open” as one reason that Flash isn’t allowed on the iPhone and Adobe has adopted a “we love choice” mantra in its response. One can’t help but laugh that two of the most historically closed companies in technology are now in a proverbial pissing match over which company has embraced openness more.
People that know me know that I’m in favor of calling a spade a spade, so let me be clear: Apple and Adobe’s use of terms like “open market,” “freedom,” and “choice” are completely dishonest and mendacious. Claiming openness as a virtue in this debate is disingenuous on the part of both companies, and arguments about the technologies in question can stand on their own without “open” muddying the waters.
Both Companies Are Only Open When it Benefits Them
Apple and Adobe want to talk about the importance of being open, adhering to standards and offering developers grand ideals about things like “freedom” and “choice.” But when it comes down to it, each company is only open when being open benefits the company itself.
I’m not criticizing that decision; the choice to support “open” on the basis of business and not idelogy makes perfect sense to me. It’s actually what most companies — even those that invest much more in open source tech than Apple and Adobe combined — choose to do.
However, it is utterly laughable for either company to argue from an ideological position about the power of being open. It’s ludicrous, and it just doesn’t meld with reality.
Let me explain why.
Open Web vs. Open Development Platforms
In the mobile application space, we talk a lot about web apps and native applications. Web apps are applications that run entirely inside the web browser. It’s the difference between accessing Gmail on the iPhone and using the built-in mail application.
The Apple/Adobe feud actually crosses over into both of these areas.
- Apple disallows Flash as a browser plugin to run on the iPhone, it says, because of performance and because it wants to focus on open web standards, not on proprietary plugins.
- Adobe is angry that Apple has banned the use of its cross-platform compiler in Flash CS5 in the creation of native apps submitted to the App Store.
These are two separate issues, but both are good indications as to why neither company can claim to really care about being “open” except when it suits them.
The W3C (the World Wide Web Consortium) is the international organization that works to create the standards for the web. Apple is a member of the W3C, along with Adobe, Microsoft and Google.
While Adobe can argue that elements of Flash (through its Open Screen Project) are indeed open source, Flash itself is not an open standard. While Adobe cites some open source implementations in its “truth about Flash”, like Gnash — the open source Flash alternative — those same runtimes cannot achieve parity with the closed-source alternatives because parts of Flash associated with DRM and other content controls aren’t available. Just ask XBMC users in the UK who can’t play BBC iPlayer content anymore.
Unlike HTML5 and CSS3 and related technologies, Flash is not an open standard on the web. Adobe might license some of its technology free of charge, and it may have some of its SWF spec available, but the entirety of the Flash ecosystem is not open, nor is it a web standard. It’s hypocritical for Adobe to say that they support freedom of choice when that freedom doesn’t extend to implementations of its own technologies.
Defining “Native” Code
However, Apple isn’t fault-free in this discussion either. Whether you agree with Apple’s stance on cross-platform compilers and compatibility layers or not, those very same provisions — rationalized just a few paragraphs after espousing the virtues of open standards — are also doublespeak.
Apple is against the use of tools like Flash CS5 in iPhone application development because those tools are ultimately controlled by one party — Adobe — and could potentially cause compatibility or performance problems for the iPhone.
This is understandable. It’s also understandable that developers who already have to pay $99 a year just to build apps for the iPhone can’t pick what tools they use to create those apps. Adobe’s own employees have made it clear how they feel about the issue, and the company is encouraging Flash developers to move to Android.
Even non-Flash developers are bothered by this move. Just this week, veteran Mac software developer Wolf Rentzsch announced that he would be canceling C4, a conference for indie Mac developers, in part because of Apple’s decision regarding cross-platform compilers.
So in this scenario yes, Apple is preventing developer choice. This in itself wouldn’t be that big of a deal — it might be upsetting and aggravating, but it wouldn’t be as hypocritical — if not for all the warm and fuzzy talk about the importance of being open in regards to web applications.
Screw Being ‘Open,’ Let’s Just Be Honest
Neither Apple nor Adobe is a poster child for open software, open standards or open development. That doesn’t mean either company is bad. It does mean that bringing those sorts of emotion-driven phrases into the debate only conflates the issue and makes things more difficult to dissect.
Adobe is in a difficult position in this debate because it’s an easy target. There aren’t any mobile devices that ship with full Flash support (‘coming soon” doesn’t count), and more and more content publishers are either moving to HTML5 for video or exploring native applications (not created in CS5) in lieu of Rich Internet Applications (RIAs).
The mobile web is not the same as the web on the desktop, and the sooner everyone realizes that, the better. I would much prefer Adobe show off more first-hand demonstrations of what Flash can do on mobile devices, why it is a suitable technology for touch interfaces and how embedded systems can use it rather than get into arguments about what is or is not the future of video and whether or not Flash is a suitable IDE for native mobile applications.
On the flip side, I would much rather Apple continue to show its support of the open web and web standards by furthering development of WebKit and building those features into its mobile and desktop devices instead of micro-managing its vast army of mobile developers.
In a perfect world, both companies could agree to disagree and move forward on their own path without attacking the other. Sadly, I doubt that’s going to happen anytime soon.