When I was reading the Steve Jobs piece named Thoughts On Flash I was a bit uncomfortable about it. Although Jobs may have some valid points there, there were flagrant factual inaccuracies, false equivalences, and other logical fallacies.
“Adobe’s Flash products are 100% proprietary … By almost any definition, Flash is a closed system.” This section mixes up a couple of different issues. Is it trying to discuss the Flash interpreter plugin that some people want on the iphone/ipad/etc? Or the tools used to create Flash applications and content? Or is he talking about the specification or at least the direction the specification will take in the future? (Later on he’s talking about Flash video, but at this point he seems to be focusing more on the interactive animations aspects of Flash.)
Jobs is leaving out the part where people have downloaded the SWF spec, and created their own compilers and development tools. There is no reason to buy Adobe products or ask their permission to create Flash content. (Although to be fair, I think there are some restrictions about creating an alternative Flash player. I don’t think this is the problem in Apple’s case because Adobe seems willing to help them port the player to the iphone/ipad platform.)
He then blurs the difference between open standards and open source software by bringing WebKit. His description of its origin is a little bit off. (I wouldn’t describe it as Apple and a small open source project created WebKit. I’d describe it as Apple taking an existing, completed product called KHTML and adapting it to their uses.) It wasn’t Apple who was “making its WebKit technology open”. They were complying with the license for the code they based it on. In some ways, these 3rd parties using WebKit are in the same position as the people making tools based off the SWF spec mentioned above. They can use it as it is, but they have little input in the direction it takes in the future. There is now WebKit Consortium to corroboratively decide on how WebKit will evolve in the future.
In the section on the “full web”, I found it a bit jarring that he’s moving from Flash as a whole to its video component. I can’t find an exact quote from Adobe that uses the 75% figure, but the references I see from Adobe talking abut the “full web” seem to imply the interactivity features of flash as well as the video. He then touts H.264 video as an alternative (even though video might just be a straw man) but doesn’t disclose the financial advantage Apple has for people using H.264. Apple’s patent portfolio covers aspects of the H.264 spec, so people creating tools for it need to pay Apple.
Flash Games are then cleaved off as a separate from the “full web” issue, and offers games from the App store as an alternative. (how did we move from the web to standalone applications?) Issues like interactive infographics used in news websites and other uses of Flash aren’t mentioned.
In the section on reliability, security and performance there is a lot information based information at Apple or Adobe that I’m not privy to. When Jobs says that they “know first hand that Flash is the number one reason Macs crash.” Does he mean that most of the crash reports they get are from web browsers running flash? If that’s the case, I’m not sure it proves the reliability of Flash is low or if it proves that more people are spending time in web browsers on sites running flash compared to other software. (If there are more crashreporter logs from Safari with Flash in the stackdump than there is for Skype, does that mean that Flash is buggier than Skype or more people use it more often.) I guess I’m wondering about this in the same way I wonder about reports that car crashes are more likely within 10 miles of my home than on longer trips. I spend more than 95% of my time near my home.
Jobs talks about how Flash is not yet shipping on a smartphone, but this seems like a tautology because Jobs controls one of the most notable smartphone manufacturers and is refusing to ship with with Flash. (Adobe will eventually convince someone else to do it, which will eventually be a way around this; but for now Jobs is saying that it can’t ship on his smartphone because it hasn’t shipped on a smartphone. If he ever relented, the argument would no longer be valid.)
The next section talks about battery life. It seems like we’ve swung back to the Flash video rather than the interactive animation portions of Flash. He points out that some systems (I guess including his) have H.264 decoding as specialized hardware chips and that other Flash codecs need to be decoded in software. These are Apple’s own devices though, and made to their own specifications. They put the H.264 hardware into the iphone and then H.264 is touted as the better solutions because the hardware is already in the iphone. (If the iphone or ipad had H.263 or VP6 hardware support built into it, it would have the same advantages.)
His last reason is that Flash is a cross platform development environment that would prevent developers taking advantage of the native platform APIs. One oddity here is that he has once again moved away from Flash as a web platform and back to comparing it to standalone iphone or ipad apps (which he last mentioned in connection to games above) I also find it amusing that when Steve Jobs ran NeXT, the OPENSTEP platform was all about having a cross platform development layer for x86, Motorola HP, Solaris, and Windows. At the time it was touted as being a platform that was greater than the underlying native platforms. Can a cross-platform development layer only subtract from the native capabilities? Or can it also add? Also, just because Apple adds things to the platform, does that mean developers will take advantage of it? How many Macintosh apps take advantage of the Services API (something that has been around since OSX was NeXTSTEP.) How man iphone apps take advantage of the peer to peer and multiplayer features they added last year? I would think that if Flash was available but didn’t have access to all the platform features than an app developer could use the native tools as a competitive advantage.
I guess when reading Jobs’ letter, I believed some things are true. I believe that he doesn’t want Flash on the iphone platform for the iphone, ipad touch, and ipad. (all the logical fallacies in the content doesn’t contravert that point of the letter.) I believe that he has some sound reasons, and some of them may revolve around some of the general topics he covers. The letter was distributed to the general public to encourage us to agree with his decision. Unfortunately, the flaws in his arguments imply based on his own self-interest and I’d encourage the general public to consider that there may be some more facts and points of view beyond what Steve Jobs says.