When I first encountered Flash in the form of Shockwave, I was amazed. Such interactive websites compared to the simple websites back then, some still with Netscapes gray background. At that time I was managing development at a web agency and life looked wonderful. We put flash intro pages on every website we’ve build, wooing and amazing potential customers and winning contracts.
The problems came later, as flash was harder to maintain then our regular – back then Python – website code and we always needed a specialist to fix bugs and enhance our Flash applications, essentially making our Flash guru a bottleneck. Today this problem persists, web agencies sill pitch Flash heavy websites while inhouse development sigh when hearing flash. Handling of critical problems in flash is seldom part of bug fixing processes in companies.
Then came the age of mobile applications and websites. Very few applications, hard to install, very small browsers unusable for surfing. Apple revolutionized both mobile surfing and applications with the iPhone. The browser was intelligent and large enough for browsing and the app store made it easy to install new applications. People who for years never installed an application on their Nokia phone were now talking about the newest and coolest applications on their iPhone. But Apple doesn’t want Flash on their iPhone. The internet exploded and flame wars were started.
But why doesn’t Flash make sense on the iPhone? Flash has much more in common with iPhone apps than web sites. The mantra of Flash always was writing interactive applications instead of websites. This is the reason why Flash doesn’t make sense on the mobile web, not because it uses lots of battery. With different mobile phones and different resolutions, you would need to write different Flash applications to be really usable on different resolution phones. Each device has its own UI and different resolutions not only force your app to resize, but to redesign the UI with major rewrites of your app. HTML does resize much better â€“ even apps – and applications don’t even resize properly on desktop operating systems. So Flash is very hard to reuse for desktop and mobile, you need to write several versions – except in generic cases like video streaming which scale by themselves. And if you need to write a special iPhone edition of your Flash app, you can just write an iPhone app (server code remains the same) and take advantage of the better capabilities.
Writing several versions is what web agencies would love to do, but inhouse development dreads (and prefer HTML). These are more or less the fronts in the recent flamewars about Flash on iPhones.
Update: Exhibit 1, Chrome browser scaled down