Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Ex-Adobe Engineers on Thoughts on Flash (wired.com)
107 points by vluft on April 30, 2010 | hide | past | favorite | 56 comments


"Luh was also formerly employed by Apple on the Final Cut Pro team. He said that because Adobe’s Flash Packager didn’t use Apple’s toolchain to create apps, the resulting code would not work well on an iPhone or iPad. A simple "Hello World" app created in Flash and compiled to work on the iPhone would take up 8 MB, he said, when it should be no longer than a few KB. (Wired.com verified this figure with two other developers who have tested the iPhone Packager tool in CS5.)"

8 MB for a simple binary? Really? That alone is almost enough justification for me. I frequently end up downloading apps directly via my iPhone - a massive increase in download time for no actual gain in value would hurt the experience.


That's weird - I see 3.6 MB, not 8 MB, when I click into the article (Apr 30, 3:24 EST):

"A simple “Hello World” app created in Flash and compiled to work on the iPhone is substantially larger in file size, and it would take up 3.6 MB when it should be no larger than 400K when made with Xcode, according to James Eberhardt, a mobile developer who has tested iPhone Packager."


Funny, they must have changed the quote in the past hour or so. 3.6 MB is still pretty bad though :)


It's an edge case. No one is going to be deploying a Hello World App to the App Store. Try comparing code size for similar applications and then we might have something to talk about. Otherwise, this is poor argument.


Well, here's a few examples from the apps on my iPhone:

Tweetie 2 (very full featured twitter client): 2.8MB

Things (todo list manager): 983KB

Strategery (game, simple graphics): 6.3MB

Canabalt (game, slightly fancier graphics): 8.8MB

iOctocat (github browser): 749KB

Prowl (internet notification client): 351KB

Simplenote (Note taking, iPhone/iPad universal version): 853KB

Edit:

A cursory run-through of the flash apps listed by Adobe http://labs.adobe.com/technologies/flashcs5/appsfor_iphone/ indicates that they're all approximately 10-11MB.

MTV's South Park Avatar Creator is 9.3MB. Three other avatar creators that seemed similar in the appstore averaged about 6.5MB. Not a very scientific comparison, admittedly.


I wouldn't be surprised that they're bigger as it's generated code. Still, it doesn't seem to me like flash apps are going to eat up all your available app storage space.


I don't think app storage space is the problem.


Are you saying that a typical Flash app would be smaller, or a typical iPhone app would be larger?


I don't know which would be larger/smaller -- I'm saying that the size of a Hello World App is irrelevant.


I think you can safely say any Flash iPhone app is going to be larger than the Hello World app. The only issue in question is how much larger.


Again, the Hello World App is entirely irrelevant -- the question is whether a real world Flash iPhone app will be substantially larger than a native iPhone app that does basically the same thing.


To clarify the point with an example, a one line hello world python script when compiled down to an executable on Windows takes about 7 mb of space because of the runtime payload. But, a more complex 1000 line script wouldn't take up much more space - maybe 7.2 mb


I would still rather have a large download than no download. Adding flash wouldn't hurt anything, it would simply enable some more developers into the iPhone space.


> Adding flash wouldn't hurt anything

Remember that "software decoding + crash problems" bit? It certainly would cause harm.

And Apple's not concerned about bringing more developers to the iPhone, they're concerned about bringing _great_ developers to the platform. It's never really been about numbers with Apple, anyway.

EDIT: I'm also not saying that Flash developers are bad, and that they shouldn't make things for the iPhone. I'm just saying that Apple's not playing a numbers game, they're playing a quality game. I'm sure Apple would love for all Flash devs to start making apps with Objective C.


meh... I'd pick quality over quantity any day...


Unless you didn't have enough to choose from; that is, you were drastically deficient in quantity.


That's one thing the iPhone App Store isn't.


> Adding flash wouldn't hurt anything

Not adding it doesn't hurt anything either


The Flash-compiled apps would not be nearly so big if Apple allowed shared libraries to be installed once and loaded dynamically, instead of forcing them to be statically linked into each and every app that uses them, thus bloating app size with redundant code.

But that's crazy talk -- it's not like iPhone OS is an Unix with several[1][2][3] well-defined and proven extension mechanisms, or anything...

[1] http://developer.apple.com/mac/library/documentation/Develop...

[2] http://developer.apple.com/mac/library/documentation/CoreFou...

[3] http://developer.apple.com/mac/library/documentation/MacOSX/...


Then Apple would have to trust that Adobe (or other 3rd party library developers) will never introduce regression bugs in their dynamic library, and never break the ABI, otherwise you risk that an update in a library will break lots of existing apps.


That is what library versioning is for. One app uses X version, Y app uses another. The worst case scenario is that it would be just the same as the current static library memory usage we have now.


All risk could be removed if an app could only use a specific version of a library I guess (even a bugfix micro release can introduce regressions). However, adding support for 3rd party libraries would add quite a bit of complexity to the app store, since each app would have to include information about which external libraries it uses, and when downloading an app, iPhone OS would also have to download all the external libraries, if not already installed.


> If Adobe crashes on Macs, that actually has something “to do with the Apple operating system ,” Adobe’s CEO Shantanu Narayen told The Wall Street Journal.

Yeah, that’s it. Program crashes. Must be the OS. Right.... Heck, why not blame the hardware, too!


Not that I agree with him but this article kind of murdered his quote. He was replying to the fact that Jobs had implied that Flash was responsible for the majority of Mac crashes.

I think jobs just meant that Flash simply crashed a lot on Macs but he seemed to infer that Flash actually caused the OS to crash. If Flash is causing the OS to crash then yes there is a problem as you'd hope a program residing in the user space wouldn't crash the kernel.


I think when they say "crash" they mean crashing Safari, not crashing OSX.

That stat came from Apple's automated crash reporting tool, and I can't imagine that'd work after a kernel panic.


OS X saves a log and sends (or asks to send) the report back to Apple the next time the user logs in.


A program in user space cannot be the root cause for a kernel panic. He meant Safari.


I was simply referring to OS X's automated crash reporting tool. Which does work after a kernel panic, regardless of what messed up badly enough to cause such an event.


Cool, thanks for the info.


Jobs didn't imply that Flash is responsible for the majority of crashes. What he did say explicitly, and not for the first time, is that Flash is the number one source of crashes on Macs. That's not the kind of claim a chief executive would make without the data to back it up.

Regardless of whether the crashes are due to poor code in OS X or poor code in Flash, if Apple wants to maintain a reputation for stability, their biggest enemy is the crashes involving Flash. Since they don't control the quality of code in Flash, they've got reason enough to try to kill Flash without their mobile strategy coming into the picture.


Yeah that quote is especially hilarious since Flash crashes more frequently on Linux than OS X. Is that the operating system's fault too?


I have seen Flash crash a few times on Windows too...


Appropriately, this page has a Flash ad that times out and causes the page to become unresponsive on my Mac.

http://marcusvorwaller.com/look/flash_fail-20100430-125225.j...


Flash may have killed Safari but OSX keeps working as if nothing happened. That alone should say something about the OS.

I've seen flash take out Windows XP. Not a blue screen but destabilized the system so badly it needed to be rebooted and it promptly froze halfway through the shutdown process. I'm still curious how flash was able to do that because I could repeat it by visiting the same website.


> Flash may have killed Safari but OSX keeps working as if nothing happened. That alone should say something about the OS.

Sure does: Keep the UI out of the kernel :)


Interestingly enough these Ex-Adobe engineers are likely just as affected as Adobe. On their blog they believe their project Corona will prevail, I'm not so sure.

Unfortunately, I can't go into much detail, but Apple is definitely cracking down on these multi-platform developer tools.


On their blog they believe their project Corona will prevail, I'm not so sure.

They're not sure either. That's why they're kissing up to Apple and hoping by showing allegiance they might get an exception. They're probably thinking that Apple would be happy to partner with, or buy out, a flash-like platform that's iPhone OS friendly.

I don't think these guys are the most credible arbiters on the issue; they have a horse in the race, and probably an axe to grind.


Are you saying the crackdown is yet to come? Ie on things that are being approved right now, even after accepting the new ToS?


This reads like Adobe left flash to wither on the vine. In retrospect perhaps Adobe is better at tools and they should have open sourced the flash plugin 5 years ago. Allowing them to concentrate on world class tools.

I can't help thinking that acrobat reader is perhaps going the same way. Will anyone use the plugin in a few years?


Adobe only acquired Flash (w/ Macromedia) ~4.5 years ago, so they could hardly have open-sourced the plugin 5 years ago.


I thought the acquisition may have been almost exactly 5 years ago, but you're right that it wasn't complete till December.

Also I was thinking if the plugin were opensource over this period when there has been increased browser competition how much more innovation we would get natively in the browser.


“Flash was designed for the desktop world, for web and large screens, not the user experiences you want to create in these new devices with touch, accelerometers and GPS,” Luh said. “It wasn’t designed with that in mind at all.”

Bingo...


The same can be said of all technology whether that's HTML or any runtime or platform ever in existence. The fact that it existed before these things (touch, accelerometers, GPS) means that obviously it wasn't designed for these things. But technology advances. You wouldn't say that HTML 5 shouldn't be used for drawing capabilities because HTML 4 wasn't created for drawing. That's just silly.

The current beta of Flash player supports touch events (including gestures), accelerometer input, and GPS.


The iPhone was announced over 3 years ago. Now it's 2010 and this Flash player is only in beta. It demonstrates how Adobe has struggled to deliver their software for these devices, likely due to the reasons these former employees suggest in the article.

In the meantime, Apple has delivered an excellent mobile video and HTML5 implementation, and they did it using open standards and open source.


Well ok then... I wasn't saying that they did it fast or that it's released or anything of the sort. I was simply saying that the argument that a technology was first developed before the current needs of the technology is a completely bullshit argument.


The point is that HTML5 was designed for touch, accelerometers and GPS where as Flash was not.


and my point was that HTML _5_ is being designed for touch, not any prior version of HTML. Just like Flash Player _10.1_ is being designed for touch, not any prior version of Flash.

Saying Flash wasn't originally designed for touch, etc. is the same as saying HTML wasn't originally designed for touch, etc.


but all flash apps, up till 10.1 where not. where as all HTML 5 apps are.

listen, I get what you are saying: the past is the past, but we want to move on, now, and adobe seems to be moving glacially.


And if your proprietary walled garden is moving at the same speed as the web standards body (CMON!), you are #$@*ed.

http://en.wikipedia.org/wiki/Comparison_of_layout_engines_(H...


There was something called "Flash Lite 1.0" that was usually on cell phone demos circa 2004-2007. I don't recall any apps ever being built for it, getting any buzz, etcetera (especially on my Treo 650 which was a great phone). I do remember a few Vaporware™ press releases though. Sorry, plugins are ghetto.


Flash Lite is alive and well on the Symbian os, including applications and websites.

In fact Symbian is probably the os with the most dev tools available: java, c++, python, flash, ruby(?). There was a .net too but the company that made it closed shop.


Flash lite works on my blackberry just fine.


"A simple 'Hello World' app created in Flash and compiled to work on the iPhone is substantially larger in file size, and it would take up 3.6 MB when it should be no larger than 400K when made with Xcode..."

Am I the only one that finds both scenarios to be ridiculous? 400k or 3.6MB doesn't matter -- both are stupidly large just to put up hello world...


Making Hello World apps is an edge case for commerical software development frameworks. They're not optimized for it and there is no reason for them to be.


When your framework is made to build apps that may be downloaded over the air on the nation's least reliable cellular network, you should at least try not to include the kitchen sink with every app. Waiting for the app to download is the user's first impression after clicking "buy".

Hello World is not just an edge case - it's a lower bound. There are plenty of non-trivial apps that can be implemented in under the ~3MB overhead for Flash. Once multitasking arrives, this kind of overhead will be even more important, because small single-purpose utilities will be more useful. Also, if the overhead is 3MB on-disk, the in-memory overhead is likely to be even bigger, and it's not likely that it could be shared between several Flash utilities running simultaneously.


Now I really want to hear the an ex-Macromedia engineer's thoughts on Flash.




Consider applying for YC's Winter 2026 batch! Applications are open till Nov 10

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

Search: