Flash Is Never Coming To the iPhone

TUAW (The Unofficial Apple Weblog) posted a list of things their readers want to see in iPhone 4.0. Flash made it on the list with 80% support.

Almost 80% of us want Flash, even if it’s a bad idea.

Personally, I’d love to see Flash work on the iPhone. There are so many sites and apps on the Web that use it that it would most certainly be something users will benefit from. But, this just isn’t going to happen – at least through the phone’s Safari browser that is. The reason for this has nothing to do with technical problems; it’s all about Apple’s strategic vision for the device.

You see, Flash is a powerful tool when compared to something like simple HTML. Yes, many of today’s apps use JavaScript to power dynamic controls and animations, and in the future we’ll be doing this with HTML’s canvas, but for now Flash is one of the easiest tools to use if you want to create rich, interactive sites and apps on the Web. You can use Flash to make games, play movies and do all manner of things which HTML just wasn’t built for.

The problem? Flash is expensive – in terms of CPU usage that is. Flash, especially on the Mac, is hungry for computing power. It’s also slow when compared to native apps or HTML pages. If Apple were to get Flash to work on the iPhone, it would almost certainly eat the battery for breakfast and probably won’t run very fast either. But… even if they did figure out how to optimize it and get it to run relatively well, it still wouldn’t matter.

It wouldn’t matter because Flash isn’t just something consumers would use – it’s something developers would use to build iPhone apps, and there is no way Apple is going down that road. Developers had to wait a while for Apple to release a native software development kit. Before this, the only way to make iPhone apps was to… well… it wasn’t; you just had to make web apps and run them in mobile Safari.

People wanted more, and so Apple delivered a set of tools to make native app development possible. They worked very hard to make sure this set of tools was very, very good. The reason: they have to ensure that the apps created by third parties are good and feel at home on the device. Apple provide things like UI presets, icon builders and usability guidelines to ensure people’s apps are as good as their own.

They distribute these apps through their closed marketplace – again, to try and maintain a certain standard. I say “try” because this didn’t work out very well and there are plenty of pathetic “iFart” apps in the store. I’m sure Apple doesn’t really want these sort of apps in there since they cheapen their premium brand, but with a flood submissions that they’re receiving daily they have to give way to developers somewhat.

Anyway, my point is this: Apple want to tightly control the stuff people make for the iPhone because the product’s selling point isn’t the hardware, it’s the software – the user experience. Hardware can be copied – a user experience cannot.

Allowing third party apps on the phone meant that Apple is no longer the sole architect of this experience. Now, every developer making iPhone apps shapes this experience in their own limited way. Apple are doing their best to keep a firm grip on this to ensure they are still in control and are the ones setting the direction.

Back to Flash. If Apple were to implement Flash for the iPhone, developers would get another tool with which to make their apps. They will also have a completely open channel for distribution: the Web. This means no control for Apple. People will make Flash apps without their guidance, toolkits or distribution. These Flash apps would all look different, feel different, and probably won’t run very well given Flash’s performance issues on OS X. What we’ll get are a lot of laggy apps and games that eat the phone’s battery and look out of place on the device. Apple’s sacred user experience will be shattered.

This doesn’t fit at all into Apple’s strategy for this device. That’s why there is no Flash for the iPhone today and why Apple won’t be implementing it in their mobile Safari browser in the future. We’ll likely see it in a form of an application packager that turns Flash apps into iPhone apps, something Adobe is working on right now, but on the browser front, where it really matters, Flash isn’t coming.