http://www.apple.com/hotnews/thoughts-on-flash/
Basically one giant “Fuck you Adobe.” right from Steve Jobs himself.
However, if you look past the obvious bias, the article is rather astute and factual. I’ll break it down for you.
Point number one talks about being “open”. Jobs is absolutely right in the fact that Flash is 100% proprietary. The only people who can do anything with Flash is Adobe. This may sound hypocritical, but only half so. While iPhone OS is fairly closed off and the main app channel is the App Store which is under Apple’s control, it is technically open. It uses stuff from Mac OS X which any well educated person will tell you uses open source components. You can actually see which components are in use on iPhone OS by reading the legal notice in settings>about>legal. iPhone OS is closed in the sense that we have to jailbreak it to do as we please, but in the terms that Jobs is talking about, Flash is much more closed off and Apple does indeed support open standards and has always been to push legacy tech out of the way, this shouldn’t surprise anyone. Because of this method, Apple has surged and become a leader in innovation.
The second point, the full web, is right on the money. Because of the iPhone, iPod touch and iPad, many large sites have taken these devices into consideration and adapted so that the user experience is up to par with expectations. Sure, there are many sites out there that have not made changes, but these are sites that will slowly fall off the map. The argument is “Well why should we have to adapt to these users?”. The answer is “Why shouldn’t you?”. The web is ever evolving, if that was the attitude several years ago, we’d still be looking at some pretty shitty web sites. Geocities anyone? While Flash is undeniably still somewhat important, the fact is that there are new and open standards that can do everything that Flash can do, using less power and better control. If there is an issue with a Flash web object, you have to jump through hoops to fix it. With an open standard like HHTML5 and CSS3, it’s often just some keyboard work in a text editor and can be done faster. I’m sure there are naysayers, but those are the facts. Bravo to Apple for pushing new and worthwhile/beneficial standards.
Third point: Security and performance. How many times have you went to youtube and your browser hung and crashed? Youtube has offered up an HTML5 version of its site in support of the new standards, and many other sites are doing the same, simply because Flash sucks. Apple was also correct in that while Adobe has had previews of Flash Mobile, they have yet to ship it on any consumer smartphone. There really isn’t much to comment on here.
4; Battery life. While the iPhone hasn’t always had a showstopping battery life, Apple is correct that using software to do things that could be better done in hardware uses more power. Using software to decode means that the CPU of the machine has to handle the work as well as run everything else on the device, and this both uses more power and reduces the reliability of other software running, such as a browser. When you offload a video to be decoded to the GPU you leave more room for the CPU to breath and work, and make better use of any idle GPU cycles to do the dirty work and everyone is happy all around, and uses less power as well and things run fast. I’m all for using H.264, it can be decoded in hardware and plays smoother and faster than a flash video will on a mobile device. All websites should offer up a choice of either running the flash or H.264 formats at least.
5; Flash was made way before the iPhone and iPod touch were ever even being tested internally. Not all the features would be logically supported, such as the very “rollover” method that Jobs mentioned. How would you implement this using your fingers? Even if flash was allowed on the iPhone, you’d still have to redo your flash objects, so why not spend the time doing so using an open standard and make your site even more worth while?
And finally, the 6th point; Apple disallows apps not written with C, C++ or Objective-C. This means that Adobe is shit out of luck with their Flash app compiler. And this is good, for the very reason Apple has stated, that they would have to subjugate themselves to a third, intermediate layer not under the control of Apple to ensure that things work as advertised. And this works so long as Apple keeps iPhone OS under the strict control it is under. If Apple opened up iPhone OS to allow people to run whatever they want on the device (which they wont), then I could see where this would be way to harsh to agree to. Plus, as stated for point 5, if you’re gonna write an app for iPhone OS, why not just use the prescribed code standard to begin with? What makes a Flash based app any better than one written with C, C++ or Obi-C
Some people have said that Apple is tyrannical with this stuff, and while it may kinda be true, I completely see where they are coming from and I see that they are pretty spot on with their points and reasons. I understand why iPhone OS is closed and why Apple wants to push things the way they are; Because without it, iPhone and iPhone OS would be just another “smartphone” and fallen through the cracks. Keeping control and pushing things in certain directions is key to their success, and no one can say they matched their success and quick growth by a long shot.
Clinging onto old, legacy formats and tech is a quick way to get left behind. Not maintaining and keeping quality control on things to make sure they work right is another. People need to understand this. Apple is far from wrong, and I applaud Jobs for calling out Adobe on its shortcomings with Flash. And instead of just responding to the open letter, why not fix what is broke and make people happy for once, Adobe?