29 Apr 2010

Apple's CEO Entered an Insanity Plea as the Reason for Banning Flash on the iPhone

Today, Steve Jobs, CEO of Apple, publically entered a plea of insanity on Apple.com as to why Apple is banning Flash from the iPhone.

As an Flash developer, I feel Mr. Jobs arguments are fairly weak and a bit on the side of insane and just goes to show everyone how deperate Apple is to put out these public relations fires caused by not allowing Flash on the iPhone or iPad.

First and foremost, there is a huge difference between developing apps and developing websites that are viewed on mobiles. Steve kind of blurs the two together throughout. Adobe Flash runs within browsers, while Adobe AIR has been used to develop desktop and native mobile apps which includes iPhone and iPad apps. While Flash hasn't been tested in the iPhone Safari browsers, there are over 100 apps that were built with Flash CS5 and AIR 2 that are currently in the iTunes Store. Nowhere in his post does he address how well iPhone Apps that have been developed with Flash CS5 and AIR 2 work so well on his precious little devices.

So yes, I think Steve's post is filled with shenanigans, ancient facts and many statements that are simply insane!

WARNING THIS IS A LONG POST!

 
 
Steve's Point #1 - First, there’s "Open". 
 
My Response - Yes, Adobe is "100% proprietary" and Flash is not technically an "open", but why does this matter? At least they place nice with others. Adobe's Open Screen Project is clear evidence of this. Along those lines, Adobe doesn't dictate how we can and can not use their tools. In this sense, Adobe is open. We pay for the tools, we use them however we choose.
 
HTML5 nowhere close to being complete, and it simply doesn't have the capabilites of Flash. Just take a look at the specs:http://dev.w3.org/html5/spec/Overview.html
The plugin issue is not really an issue either. Google has embedded Flash Player into Chrome and will be doing the same when Android OS 2.2 (Froyo) is released later this year.
 
 
Steve's Point #2 - Second, there’s the "full web".
 
My Response - This really has not happened until recently, more than likely because of the iPad. Most of these companies like a Netflix or a Facebook, have just recently implemented these video player that work on the iPad and iPhone. So when Adobe said majority of site run Flash video a year or so ago, yes, they were correct. I think Mr. Jobs took this statement a bit out of context to match is arguement.
The gaming point made me laugh. I'm not sure why Steve keeps referring to old comments made my Adobe. Hasn't he seen some of these Flash games (http://labs.adobe.com/technologies/flashcs5/appsfor_iphone/) running on his iPhone? 
 
 
Steve's Point #3 - Third, there’s reliability, security and performance.
 
My Response - I personally don't recall seeing Symantec stating this. Even if it were true, Flash is like any other leading technology (like Microsoft Windows)... its will always a prime target because its on pretty much every machine. Its not like the Adobe engineers are sitting their twiddling their thumbs, they are always working to patch these security issues.
As far as Flash not working well on mobile devices. I say this is a load of crap. Again, where what decade is Steve talking about? In 1995, maybe. Devices now are powerful enough to support Flash and as Andy Rubin, Google's VP of Engineering Android, Flash will be bundles with the next version of Android. 
 
 
Steve's Point #4 - Fourth, there’s battery life.
 
My Response - I don't know all of the technical details related to this, but yet again, Steve has some of his facts possibly straight here. Flash does supports H.264, as well as many other formats. If its a matter of Flash accessing the hardware, that problem should be fairly easy to resolve if Apple opened up the platform a bit. Just last week, Apple conveniently opened up the Mac operating system, so that Adobe could use hardware acceleration for decoding H.264 on Macs. Seems to me, that this is an Apple issue, if it is anyones.
 
 
Steve's Point #5 - Fifth, there’s Touch.
 
My Response - This was his most comedic comment in this post. Yes, most website created 3, 4, 5 years ago, whether created with Flash or HTML/CSS/JavaScript used rollovers. This is more of a change in mentality for the developer when they design apps and websites in general, NOT a specifc Flash issues. Today, I can take my iPad or iPhone and access HTML website that have issues because they were designed with rollovers.
 
 
Steve's Point #6 - Sixth, the most important reason. (Adobe also wants developers to adopt Flash to create apps that run on our mobile devices)
 
My Response - Um... yeah! And what is wrong with that? It would be extremely valuable from a developer's point of view to have access one tool that allows me to write apps with one language that can run on a desktop, netbook, iPhone, iPad, Android mobiles, webOS, etc... 
I've developed an app with Adobe Flash CS5 & AIR 2 that runs on my iPhone, my iPad and my Google Nexus One. The beauty of what Adobe is doing is that is takes very minor code changes to repurpose your app to run on another device. My app runs extremely well on all three devices. So I'm not sure what Steve is talking about. 
He mentioned, "We know from painful experience that letting a third party layer of software come between the platform and the developer ultimately results in sub-standard apps and hinders the enhancement and progress of the platform." What painful experiences is he referring too? I'm clueless here.
I could see a potential issue where if Apple wasn't working with 3rd parties, it would take a little bit of time for them to adapt their tools to be up-to-date with the latest APIs and features from Apple. The developers wouldn't be upset with Apple over this 3rd party not having their tools up-to-date. 
Just look out at all of the APIs that are out there today. Say a 3rd party company builts an app based on the Twitter API, then Twitter making a change to the API, and then the company's app stops working because the company didn't update their code to be in sync with the latest updated from the Twitter API. The consumer couldn't blame Twitter for this 3rd party developer not keeping his app up-to-date, they would have blame the 3rd party developer.
In response to Steve's comment about the lowest common denominator. As a developer, I would prefer initially to have a limited features at first, in exchange for being able to develop apps for a variety of platforms, as opposed to having to learn ActionScript 3, then JAVA, then Objective-C, etc...
 
 
Concluding Thoughts...
  • Flash will be a leader in the mobile era just as it has been in the PC era with or without the iPhone/iPad. Google has been it very clear that they are working with Adobe to include both Flash & AIR in Android.
  • Apple needs to grow a set and simply come out and say that the reason for all of these shenanigans is because they now view Adobe Flash as a competitor. I could comfortably live with that confession.
  • I would like to see Apple at least give a little ground and allow developers to use, Flash CS5 to build iPhone and iPad app. We've already proven this can be done effectively.
  • My suggestion to to Steve, if you really want to improve his iTunes/iPhone/iPad/iWorld he should remove all of the stupid iFart apps.  

 

 

 

*    DISCLAIMER 1 - I proudly make my living as a Flash Developer

**  DISCLAIMER 2 - I'm a part of the Flash CS5, AIR 2 & AIR for Android Beta Program

*** DISCLAIMER 3 - I'm a Mac Boy through and through. I typing this on my iMac, I'm on my second iPhone upgrade, bought an iPad before they were shipping, and my next computer will more than likely be a Macbook Pro.