No matter where you go on the web you’re almost guaranteed to run into a Flash object or two. Primarily this is because Flash has the awesome ability of being delivered through a web browser but still has most of the functionality of a installed application. Such capability lead itself to become ubiquitous on the web but the real king of bringing Flash to the public was the video giant, YouTube. Right now it’s almost guaranteed that anyone surfing the net has Flash installed so the web has become increasingly Flash based with everything from advertisments to this blog using it. So it becomes a real curiosity when the world’s most popular smartphone, the iPhone, lacks the capability to use Flash.
Searching around for the answer leads to a lot of interesting articles. Many of them show that Adobe is keenly interested in getting Flash to work on the iPhone and has been in talks with Apple for quite a while. Whilst Adobe has been pretty open about the process Apple had taken their usual vow of silence on the matter for quite a long time. More recently however Steve Jobs came out and said that it was just too slow to run on the iPhone and that it would detract from the overall experience. Couple this with the fact that Flash might impact poorly on the iPhone’s battery life and you’ve got a recipe for a significant amount of damage to be done to Apple’s “it just works” reputation. I can’t fault them from wanting to protect that.
Enabling Flash would also commit one of the worst sins against Apple: taking away control of its platform. The reason why Apple tech just works the way it does is because almost all of their products would be, to draw a gaming analogy, are closer to consoles than they are PCs. The hardware in any Apple product is strictly controlled which means the software can then be coded directly against that platform. This reduces bugs, increases turn around time for new software and is the main reason that Apple has developed such a good reputation for delivering complex tech that used to be reserved to the annals of only the highest rank techies. Allowing things like Flash or Silverlight would allow anyone to run code that was not only not approved by Apple, but also not designed specifically for the iPhone platform. I can easily see people trying to use the latest Flash games on their iPhone only to be completely disappointed, tarnishing the iPhone’s shining exterior.
However there’s one thing that Apple values above its image, and that’s its bottom line. Apple has managed to almost 10% share of the PC market (and 13.7% of the smartphone market) away from the corporate giant of Microsoft. Whilst I’m sure they derive a decent profit stream from the hardware sales (the bill of materials for an iPhone tops out under US$180 and it sells outright for almost double that) the real money is in the App Store. For Apple this is an absolutely brilliant strategy: want to have something run on our hardware with an install base of over 21 million? Sure! For a yearly fee and 30% of all revenue you make through our system it can be done. This is almost pure profit for Apple since once the initial cost of setting up the store is recovered and I’d doubt that more than 10% of the revenue generated from the app is used on auditing it. While Apple is tight lipped on just how much they’re making estimates have pegged it at a whopping $2.4 BILLION a year. Even at half or a quarter of that revenue the App Store is a gravy train for Apple, since they’re doing comparatively little work for an enormous benefit.
So we should not be suprised when iPhone after iPhone is released and Flash doesn’t make an appearance with it. The potential hit to Apple’s reputation and revenue is too great for them to cave into the Internet’s most popular client side programming framework. It’s a bit of a shame but in the end when you’ve got enough market sway to make the biggest flash based site in the world convert all their videos so that they’ll work on your mobile device I don’t think anyone will argue with your decision.
They may deconstruct your decision for blog fodder however 😉
Having owned two phones with flash capabilities in the browser (namely, the Nokia N95 and the HTC Hero) I have to say I can see why Apple aren’t so crash hot on the idea, at least with todays hardware.
While some basic flash applets run fine, most flash games will chug along at unplayable speeds. This is likely by virtue of the fact they are programmed by people who test them on the average 1.6-2.4ghz Intel chip rather than on phones, along with the fact that flash is known for being a pig even on the best systems (I have quite often seen it hogging an entire core on my quad core system at home).
About the only useful flash (ie not ads) that runs well (on the mobile) is flash video, oddly enough.
To be honest I applaud apples stance simply for the fact that it forces web designers not to rely on a proprietary application to get the job done. We can see this is entirely possible, with shining examples including sites like Meebo (www.meebo.com ) performing BETTER than comparable flash sites while using open standards such as AJAX, and video sites increasingly implementing html5 (example http://www.dailymotion.com/openvideodemo and http://www.youtube.com/html5 ) we are going to see less and less need for Flash anyway.
Good riddance, I say.
There’s definitely benefits to be had in forcing the greater web community at large away from proprietary formats like Flash (although that includes my language of choice, Silverlight). The problem isn’t so much the technology, but its application. Adobe tried to combat that somewhat by developing Flash lite, although that seems to have had little benefit as you have alluded to.
I guess what’s really needed is the development of an open client side library that brings all the features of Flash and Silverlight with the acceptance of Javascript. I know HTML5 is making some steps in that arena, although I must admit my knowledge in that area is limited.