Hacker News new | past | comments | ask | show | jobs | submit login

Sorry to spoil your Apple hate hard-on but your assertions about Flash cross-platform development are patently absurd.

There's easily half a dozen cross-platform frameworks for developing mobile apps. Most emit native code and others target WebKit views.

As for Flash, Jobs didn't want it on the iPhone because the Flash was a shit show. When the iPhone was released Flash Player 9 (with ActionScript 3 and the AVM2) had been out for a year. A vast majority of Flash content was using the older and much shittier AVM1. That content was also 100% developed for WIMP interfaces so there were zero affordances for multitouch or even just having hit boxes sized for fingers instead of cursors.

Even if Steve Jobs loved Flash and ached to have it on the iPhone most content available would have been designed for a minimum of SVGA screen resolution, a cursor, and a desktop processor and RAM and would have not been running in a JIT runtime with zero understanding of app restore states or any iPhone features.

Flash Lite was not a good option either as it did not support web content or run as a plug-in. It also did not have good touch support since most phones it was targeted for didn't have a touchscreen. It was number pad and hardware keys almost exclusively.

So there was very little overlap between the goals of the iPhone and any aspect of Flash. Flash on Android basically proved Steve Jobs right as to the performance of Flash on a smartphone. The UX ended up terrible for most content, it absolutely killed the battery, and its security problems were myriad.

Flash's problem was it sucked anywhere but the desktop. Even then it sucked on laptops as it was a major power drain and/or fan spinner. HTML5 obviated Flash for most of its use cases. Even Adobe eventually realized that and last their Flash authoring tools target HTML5.




The funny thing is, all the arguments against Flash on iPhone also apply to HTML on iPhone. Flash and the Web have a concurrent development history. Hell, AS3 almost became JavaScript 2.0 - Adobe even gave Mozilla the AVM2 runtime to replace SpiderMonkey. Conversely, pretty much no website was designed for smartphones before the iPhone. Everything was sized for large screens and had hover content.

The difference is that Apple put a lot of time and effort into making old content work. They wrote dynamic JIT compilers for JavaScript, sliced up webpages into GPU layers, downscaled old content to fit on tiny screens, changed the behavior of hovers so that you could use them with a finger, and added detects for undersized tap targets and form fields. Adobe's approach was to shove all that compatibility work onto the developer. Why make a JIT for AVM1 when you could just make a new version of ECMAScript and make everyone rewrite their movies in AS3? Why embrace GPU rendering and composition when you can just hand people a thin wrapper around OpenGL and tell them to use Starling Framework? Why bother fixing broken hovers when you can just throw more events to the developer to handle?

Like, imagine if Steve Jobs went up on stage and told people that the iPhone would run webapps, but only if people wrote everything in Angular and WebGL. That's kind of what Flash Player was trying to do. Apple knew that you had to get the existing, broken, not mobile-friendly-at-all content up and running first and they they could push through more mobile-friendly web standards. Adobe figured they could just entice developers into writing not-terrible Flash movies and then they'd be allowed on smartphones again.


Besides the performance and general UX for Flash on mobile, there's the pretty common pattern of its UX being a dumpster fire on the desktop [0] as well.

For every good use of Flash on web pages there were dozens of UX abortions. Flash sites were rife with mystery meat UIs. They were also accessibility hostile. While you can commit a lot of the same sins on a web page you have to go out of your way to do so.

Besides all of those problems it was also a closed platform like the GP was decrying with Apple's App Store. You can make a web app entirely FOSS with entirely FOSS tools and served from a completely FOSS stack. If you want to avoid any platform lock in it's entirely possible. Flash was the literal opposite until years after it's mobile availability was a meaningful concern.

[0] https://www.nngroup.com/articles/flash-99-percent-bad/




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: