Hacker News new | past | comments | ask | show | jobs | submit login
Adobe ceases development on mobile browser Flash, refocuses efforts on HTML5 (zdnet.com)
597 points by latch on Nov 9, 2011 | hide | past | favorite | 154 comments



This makes me a little sad. For all that people complain about Flash, and any problems the Flash Player runtime has, it's really a fun environment to code for. I like AS3, I like the Flash API, and I greatly enjoyed writing Flex back when that was most of my job.

I don't have nearly as much fun writing HTML/JS as I did writing AS3. I liked the (optional) strict typing. I liked writing for a single target and knowing it would just work. I liked having the power to say, "Render this thing in just this spot," and having it do what I wanted rather than spending hours fiddling CSS.

So as much as the decline of Flash is generally heralded as a good thing (and I agree that Adobe really never managed to fulfill their promises/goals with Flash on mobile devices), I'm still going to miss it when it's gone.

Edit: Just want to note that I'm speaking from the perspective of writing large, complex webapps in AS3/Flex, not just websites. Use the right tool for the job, etc etc.


You're complaining about the development environment, which is considered to be better than JS/HTML5 by many people.

However, the Flash runtime is the reason people complain about Flash. It is slow, it leaks memory, it crashes like crazy and has been a second-class citizen on every platform other than Windows since forever.

JS/HTML5 on the other hand is a mess in terms of development tools. But it is getting more and more reliable. And it's a real standard with multiple implementations that are extremely competitive. Apple was right for excluding Flash from their mobile browser, as for mobile phones HTML5 is currently much better, even though the technology powering it is newer than Flash.

Adobe's current plans are to build development tools for HTML5/JS too. They are even pushing for improvements in the standard, like CSS3 Regions.


Sadly, the development environment matters quite a bit.

- I will miss being able to declare classes using a sane syntax (Coffeescript helps in this regard)

- I will miss the optional type annotations, which caught many a bug for me (you can use JSDoc annotations + closure compiler, but only if you like placing a verbose comment in front of every single variable declaration)

- I will miss having an IDE that can actually do code completion (this not possible without type annotations, so it's not coming to Javascript any time soon)

- I will miss interfaces

- I will miss namespaces (there are various ways to hack namespaces into Javascript. They are all letdowns.)

- I will miss color transform filters, drop shadow filters, and blur filters (might become part of CSS if Adobe's proposal gets approval)

- I will miss the (mostly excellent) API documentation (MDN tries its best, but is not even close)

- I will miss masks (of any arbitrary shape)

- I will miss being able to create and dispatch my own events without having to use someone else's event framework

- I will miss having all my resources compiled into one blob and loaded together, rather than having to worry about preloading all of my UI images

- But most of all, I will miss performance. Yeah, Flash is buggy/slow/memory hog blahblahblahblah. But have you tried doing anything graphically complex in HTML5? Holy shit, your processor will scream. Things that Flash used to laugh at will bring Chrome to its knees. Don't get me started with IE.

So no, Flash is not great. It has a ton of warts. But HTML5 is not ready. Not even close. So we're going to have to spend the next ~2-3 years in techno limbo while it catches up. And that makes me sad.

HTML5 is particularly not ready on mobile. For example...don't use gradients, since they kill performance. Oh, and don't use opacity either, since that also kills performance. Seriously? I need to build a UI that doesn't use opacity animations? FFFfffuuuu--

Apologies for sounding like a grumpy old man, but promises of "someone will come and fix it with a standard...at some point" don't really get me excited. I worry that in vilifying all the things that Flash did wrong, the web world is going to ignore all the things it did right, and refuse to integrate those things into HTML.


     don't use gradients, since they kill performance. 
     Oh, and don't use opacity either, since that also 
     kills performance. Seriously?
The problem with the Flash player is that by design it assumes all applications have such needs, like opacity, gradients and animations, when this is not the case. Even with the drawbacks you mention, an interface built with jQTouch for example is pretty snappy on the iPhone. See the demo: http://jqtouch.com/

Android in particular is indeed having problems and I wasn't at all pleased with the results I got from jQuery Mobile. On the other hand Android has this problem with the UI in general, as hardware-accelerated graphics has been its weak point.

But you're comparing here the performance of browsers on mobile phones with the performance of Flash on the desktop. Adobe has yet to come up with a decent alternative for mobiles. I have Flash on my Android browser and I'm really not impressed. In fact, I deactivated it.

     Things that Flash used to laugh at will bring Chrome to its knees.
That goes both ways too ... try loading 5000 thumbnails in a Flash UI and compare it with Chrome. I do that whenever I organize my Flickr account.

Also in Chrome special effects may not be so snappy, but animations and games are doable. And they only added accelerated graphics support recently (I'm not even sure if it's enabled on my computer). Example: http://chrome.angrybirds.com/

Angry Birds is indeed not representative of what normal people will do with HTML/JS, as Rovio engineers are pretty talented. But I know dozens of games created in Flash that are less impressive and more sluggish than this Angry Birds version ... the truth is, good developers will make snappy and cool things using any technology. Bad developers won't.

And this may be an anecdote, but I never, ever used a Flash interface that I liked using. I even hate it whenever I'm viewing a YouTube video because it blocks my browser's normal shortcuts.


> But have you tried doing anything graphically complex in HTML5? ... Things that Flash used to laugh at will bring Chrome to its knees.

Agree. An example is graph visualization. Fire up your CPU monitor and go to http://arborjs.org/atlas/ and view this very cool physics-driven mesh visualization written in Javascript. You'll see the needle jump to 95% or more. On my relatively modern laptop, if I run this for more than a few minutes, it shuts off due to overheating. Also, this app does not work on IE.

By contrast, I can run an similar Flash-based visualization and CPU usage ratchets up to 60 or 70% but not more, and it works on IE.


about 30% CPU utilization on my 2011 macbook air (core i5 1.7Ghz) with chrome 16beta. not bad. is this same page written in flash somewhere?


By the time a standard comes along anyway, we'll already be on HTML8 without a standard for it. HTML will never have a standard, and it will never be at a point where all browser implement all the same features.


There will be no HTML6, etc. Just HTML

HTML is the new HTML5

http://blog.whatwg.org/html-is-the-new-html5


I will miss color transform filters…

If it's vector, it can be done with SVG/CSS3

…drop shadow filters…

box-shadow?

…and blur filters

Canvas?

http://www.quasimondo.com/StackBlurForCanvas/StackBlurDemo.h...

I will miss masks (of any arbitrary shape)

PNG with alpha?

…rather than having to worry about preloading all of my UI images

  Something like this may work:
  $("#blob").bind("load", function () {});
or even:

  body { display: none; }
  <body onLoad="$("body").fadeIn();">
But most of all, I will miss performance. Yeah, Flash is buggy/slow/memory hog blahblahblahblah. But have you tried doing anything graphically complex in HTML5? Holy shit, your processor will scream. Things that Flash used to laugh at will bring Chrome to its knees. Don't get me started with IE.

Not on a Mac. Even a freaking side banner will make the CPU spike. There are a few cases where it is slower, but it's rare and we can all help optimize.

HTML5 is particularly not ready on mobile. For example...don't use gradients, since they kill performance. Oh, and don't use opacity either, since that also kills performance. Seriously? I need to build a UI that doesn't use opacity animations? FFFfffuuuu--

Android or iOS? I'm actually pretty impressed with the hardware accelerated effects I can get in iOS if I don't do much stuff at the same time.

Check this link:

http://mir.aculo.us/2010/06/04/making-an-ipad-html5-app-maki...


Git, the version control system so many people like and use every day, arose because the entire Linux kernel community found themselves suddenly without the version control system they'd become accustomed to, and had to do without until they created a replacement. And Git has long since become much better than Bitkeeper.

How much more awesome will HTML, JavaScript, and CSS get when Flash finally goes away?


Actually, IntelliJ's tools do pretty good autocompletion for javascript. Not perfect, but much better than you'd expect.


Agreed... AS3 had the sweet spot nailed at 99%, the best brace-language IMO.


While these things are true, developing in the Flash environment was a lot of fun and very gratifying.

I believe if the Flash development environment was available for JS/HTML5 today, Flash hackers would be much more excited about it. It's not the fact that Flash is going away that causes sadness. Rather, it's the gap between that and having an equally powerful environment for JS/HTML5.


Well that was partly my point.

Another thing I forgot to mention ... Adobe already has an AS3 to Javascript compiler that produces Google Closure compliant code (or this is the plan anyway) and they are using it internally for their own projects.


What would the differences be between what that compiler does and what the Dart compiler claims it will do when its finished?


Flash has had chronic performance and reliability issues even on Windows.

And you forgot to mention one of the main issues with Flash: security (or the lack of thereof), it has had so many holes it is starting to make Active X look good (hyperbole, I know, but not by much).


Flash on IE is Active X.


Why the sadness ? Flash for mobile browser was a PITA from the start. The lite version was limited not only in power but in the APIs, was too sandboxed, and there was no practical use I can think of. I don't see Flash on android for anything serious (serious as complex webapps).

Adobe AIR is a much more adapted and competent environnement, and it's getting more traction that ever. Seems a pretty sunny landscape for AS to me.

The AIR runtime is there for serious applications, and I would expect it to be much funnier than webapps.

Edit: About Flash on android, there's the free, open submission process for full featured apps on android. An app would obviously be a better match for complex applications than Flash on the browser.


I don't have any experience with AIR for mobile, but on the desktop it's a sad second-class citizen, only slightly more featured than wrapping your website in a site-specific browser like Prism, and no longer fully cross-platform since Adobe decided to stop releasing updates on Linux. I really wanted it to be awesome, but it's not.

I do agree though, that complex browser apps just don't work on mobile Flash. I had been hoping that maybe somehow Adobe would get it to work, but obviously they haven't. And now, officially, they won't keep trying.


I am still longing to see how it goes, but there seems to be more and more "second class citizens" everywhere.

While iOS would be the major platform for heavy applications, lightweight utility apps get more and more developped in a cross-platform manner. And as a user I don't feel a great loss, since the apps are more often updated and are OK for the job.

Being a second-class citizen should be less damaging now than at the time we were running clunky java or Qt apps on windows or OS X, like a few years ago.

At least we'll get used to it, and it might become the norm for a whole class of apps.

For the position of AIR...it's compile compatible with iOS, android, it has a runtime on Playbook and the upcoming BBX, it seems to be OK on windows phone as well. I have the feeling that it is where "we" really wanted to see Flash move forward. Not as an HTML extension, but as a real immersive platform.


You might want to check out Jeash[1], an HTML5 library which mimics the Flash API written in Haxe[2], a typed language.

[1]: http://jeash.com/ [2]: http://haxe.org/


Surely you saw this coming though? But anyway, a lot of your issues with HTML/JS for the types of things you'd use AS3 for are a matter of immature tools and libraries I think. Google's added static type notation to JS via their Closure compiler - you might take a look at that. And straightforward rendering is something that Adobe could be great for giving us now that they're refocusing on this.


Oh yeah, I've seen it coming. There's a reason my day-to-day at my job doesn't involve much Flash anymore. It doesn't make me any less sad about it becoming more 'official' though. It's more of a nostalgic sad than an upset sad.

I can certainly hope that HTML/JS evolves more in the direction of AS3, though I fear that Adobe will either push in the direction of Canvas-manipulating tools (where now you have a crappier API than Flash and you still lose the ability to arbitrarily throw some html in the mix (say, for including ads)) or their tools will mostly lend themselves to huge bloated div-fest monstrosities like what we've seen out of Muse so far.


I still used Grooveshark when you guys moved from Flash to HTML5, despite it being a less enjoyable experience. But, when the AIR app became just a wrapper for the HTML5 site, I cancelled my subscription.

It seems like a lot of work went into switching, considering the functionality is still the same as the Flash version. Did any good come out of switching to HTML5?


Hmm...

Upsides:

It's easier to integrate ads and other third-party content like Facebook like buttons/comments, Youtube videos, etc. Unless you want to destroy Flash's performance by using a wmode other than window, there is no way to mix flash and html/iframe content. I'm pretty sure most people's hatred of Flash comes from ads that are not only annoying and poorly coded, but embedded with opaque or transparent. Then they will melt your laptop, yes.

It's easier to hire for, HTML/CSS/JS are more common skills than AS, especially when you're not hiring to do 'push movieclip around' Flash, but working inside a huge Flex app with 90% custom in-house components. It's also easier to find people who might not have a lot of development experience but are good at pushing around html and css to finetune the interface to our designers' desires. Maybe that got easier in Flex in Flex 4 with the Spark components, but we weren't allowed to drop support for Flash 9 despite it being less than 1% of visitors, so we were still on Flex 3.

Downsides:

Performance. Holy crap performance. The flash site still ran well in ancient browsers like IE6 and IE7. The new site struggles in IE7 and we had to drop support for IE6 entirely (performance was not the only reason there but, you know). And on the subject of mobile, the flash site was sluggish but technically worked on my Nokia N800 tablet running Maemo. New site doesn't. We're working on making this better, of course, but the new site was written pretty quickly and accumulated a ton of technical debt, mostly in the form of poor performance tradeoffs.

Stability. Ditto what I just said about IE6 and IE7. And now throw Opera in there too. jQuery eases a lot of cross-browser pain, but not all of it. The edge cases in which Flash behaves differently on different platforms are just that, edge cases, and usually occur when you have to cross the boundary into JS. So now instead of basically one platform to test your code on you have...well all the major browsers * all the major OSs.

Maintainability. When your application is pushing the 100k LOC mark, strict typing is a godsend. So are real namespaces, and interfaces. It is very very easy to write stupid code in JS. You can write stupid code in any language, of course, but at least in Flash the compiler will yell at you if it's blatantly incorrect, and exceptions throw useful stack traces on all platforms. I don't know what it is about JS and swallowing errors, but sometimes it's a battle just to figure out where in the code you need to even start looking for the error. Or that an exception even occurred.

I guess I should make a blog post about the switch someday...


Detailed and realistic, thank you. And I agree, you should make a blog post about it.


I'm speaking from extreme ignorance here, so excuse my .. ignorance.

But isn't the Adobe game plan to keep the powerful development tools that you know and love, but have them spit out HTML5 rather than Flash?


I don't actually like Adobe's development tools. I like ActionScript 3 the language, and I enjoy writing code that targets the Flash Player runtime, and its API. I write all my AS3 in TextMate.

What I've seen so far of Muse doesn't really inspire me to want to use their new HTML5 tools. I didn't like Flash Pro either. Those tools are not written for developers, they are written for designers (or 'devsigners' as terrible as that moniker is).

Now, if Adobe came out with their own version of something like Coffeescript or Google's Closure Compiler, where you wrote your code in some sort of stricter subset of ECMAScript that compiled to browser JS, I'd check it out. Especially if they somehow came up with some sort of sane rendering API that could make valid HTML. But I suspect the closest they will get is writing tools that convert ActionScript to work in Canvas.


I have to agree, I'm really enjoying working in flash every day at the moment. Web development has a long way to go before it's this much fun.


The fact that Adobe acquired Macromedia was quite unfortunate for the web. Had Google acquired it, they would have probably opensourced the player code, and maybe contributed the AS3 rendering engine into WebKit as an alternative to javaScript, making Flash native for WebKit browsers. Maybe it's not too late for this step even now.


Adobe open-sourced their AS3 engine[1] to Mozilla, instead. That potential future of JS (based on ECMAScript 4) was rejected in favor of Harmony.

[1]: http://en.wikipedia.org/wiki/Tamarin_(JavaScript_engine)


Tamarin ain't bad, but for me the main advantage of Flash right now is the relatively fast, browser-independent and (unfortunately) closed-source rendering engine.


Was Macromedia openly on the market? Did Google ever seriously consider buying them?


Just before Adobe bought Macromedia there was a lot of noise (and angst) that Microsoft would be the one to buy them.


> For all that people complain about Flash, and any problems the Flash Player runtime has, it's really a fun environment to code for. I like AS3, I like the Flash API, and I greatly enjoyed writing Flex back when that was most of my job.

Really? I used to do a lot of AS3 work; it is hands-down the worst development ecosystem I've ever been involved in.


Well to be fair, I do dislike Flash Pro. And Flash Builder is dreadful, but that's because Eclipse is dreadful and it's just Eclipse. All my AS3 work is done in a standard text editor (I prefer TextMate), and compiled from the command line with mxmlc.


I've used IntelliJ IDEA exclusively for 2 years for all of my Flash/Flex. It is awesome. Not Eclipse.


My complaints would be more that the debugger was unreliable, and the profiler barely worked at all.


"Render this thing in just this spot" is pretty well handled by absolute positioning, at least.


especially with canvas


Did Adobe ever put a serious effort into mobile Flash development? It seems they were more interested in blaming Apple for the lack of mobile Flash than actually doing the work required to make Flash a remotely viable option for mobile devices.

I wonder, what was the catalyst that caused Adobe to admit what everyone else already knew? Perhaps they saw the 5 year anniversary of the iPhone on horizon and figured enough BS is enough.


> I wonder, what was the catalyst that caused Adobe to admit what everyone else already knew?

I think it's pretty obvious. Adobe simply did the math and figured out that they are losing money on supporting the myriad of mobile devices that get thrown on the market promising 'the full web' with Flash. High development effort, low income, big competitive threat from upcoming HTML5 authoring tools.

Remember when Flash was still only available on Windows, Linux and OS X? Even then Adobe had a hard time properly supporting OS X and Linux, which have always been second-class citizens compared to the Flash Player for Windows. 6 months ago Flash Player for OS X didn't even have GPU accelerated video, and there wasn't even a 64-bit version for Linux. The only reason this has improved somewhat is because Adobe had to show the world that they were serious about supporting Flash, and to counter all the negative press Flash got as a result of iOS not supporting it, and OS X and Linux users complaining about it.

Now imagine the investment Adobe probably has to make to support 20 different ARM SoC's, and make the player even more efficient than it is on Windows PC's, knowing that neither iOS, nor WP7, nor Windows 8 Metro will ever support it. All just to sell a few more licenses for their Flash authoring tools, which is probably a dwindling business already.

Flash is dead because the world has moved on, and there is no money to be made from it anymore.


They probably gave it a good shot, but couldn't get it anywhere near lean enough. Flash turns laptops into battery-powered space heaters; on a mobile device it's just a non-starter.

Flash is just a dying tech. Were someone to seamlessly roll its functionality into an easy to use package, I'm sure you'd see it die out for games as well, which is the only remaining use-case there isn't a ready replacement for.


I'm sure no one understands the technical challenges better than Adobe's engineers. The problem is that the company never admitted these challenges to their developers and customers (until now). Instead, they continually explained the problem as merely a political fight with Apple. Your website is no good on mobile? Don't blame us, blame Apple's lust for control.

At worst, they flat out lied to their developers and customers. At best, they are merely incompetent. Either way, if I were heavily invested in any Adobe technology I would seriously question how I could continue to trust that company.


Amanita Design, creators of the indy award winning flash-based game "Machinarium", recently released this title to iPad. Machinarium is a basic point and click puzzle adventure. If written in native code this would have no issue running on even the first iPhone (of which there are plenty of similarly detailed games.)

However due to using the Adobe iOS tools(air etc.) The performance is dismal on iPad 2. iPad 1 owners have mostly sought refunds, and left bad reviews - forcing the developer to make the game "iPad 2 only" despite being a battery killing lap heater. (This already puts it in the apple cross-hairs as it's available to download to iPad 1 users.)

Discontinuing flash player is only half of Adobe's problem, the bad code is still being manufactured into processor-heavy apps which sap battery life and demand far-higher specs than what would normally be required if writing in native code, as noted in the example above.

The crux of the problem is that it's not a small amount of additional processing overhead, these basic apps are churning through battery via excessive cpu time.

These tools from Adobe are allow developers to port their flash games to the app store, and instead of increasing their revenue, it's creating problems and damaging their image/fan base.


I'm not sure Machinarium problems stem from the Adobe toolchain. The developer says it's because they hit RAM limit with iPad 1 and load resources statically:

"The memory limitations of iPad 1 (which are somewhere around 115 MB RAM per app) are just quite challenging. You have to have it running around 80-90 to keep it stable and the app has tons of timeline animations, the sources are 1 GB, all compiled into one single SWF file + some assets. The app was originally made for PC and upgraded for tablet devices. When you start creating tablet apps from scratch it's a whole different story. The game is now made with 'no compromises' compared to the desktop version and that keeps it unique."

http://www.tuaw.com/2011/09/12/daily-ipad-app-machinarium/


> Flash on a laptop turns it into a battery-draining space heater

The worst part being it is so even for trivial flash objects like those "copy to clipboard" clicky thingies (e.g github). It was not skyrocketing to 1.0 loads but enough to prevent the CPU to go in some deep C-state mode and/or back off frequency or whatever. Having such a NOOP Flash object was literally removing in order of hours from my battery life ("was", because ClickToFlash is brilliant).

I guess that way they will be true to their promise: the next iteration of Flash for Mobile will, in a way, be both stable and a non-battery sucker.


>They probably gave it a good shot, but couldn't get it anywhere near lean enough. Flash turns laptops into battery-powered space heaters; on a mobile device it's just a non-starter.

I gotta call BS on that. I've personally played hundreds if not thousands of flash games on an under-powered $500 laptop purchased in 2009. The article itself mentioned the success of flash on Blackberry devices, due largely to the fact that they cooperated with Adobe's engineers instead of freezing them out.


More like "Flash turns Apple laptops into battery-powered space heaters". The OS X player is so cruddy that simple ads will cause my MBP to spin up the fans.


What Flash "success" on Blackberry?

That's like the overstatement of the year...


Flash isn't dead yet since HTML5 hasn't really arrived. On mobile platforms where Flash is supported, it still outperforms HTML5. And the HTML5 toolset is still completely non-existant.


Yes, they put some effort into mobile Flash (specifically flash lite) development when they could justify the cost with the revenue they were receiving from handset manufacturers that licensed it. Then the iPhone came out without Flash. Then Steve Jobs slammed Flash (approximately half of which was true) and told Adobe to go back to making tools to help people make shit.

And Adobe actually listened to jobs. I feel like Flash was an end in itself for Macromedia. It was, in part, Macromedia's great tilt at the "write once, run anywhere" windmill, and Adobe just carried that on (and I would say it's the public that loses out now that that's over). In the end, it doesn't matter to Adobe that the Flash runtime isn't in the iOS browser. Or in any browser from here on out.

Adobe sells tools to make shit. Jobs gave them a way to sell a new tool (Edge) and reminded them what they're actually in the business of doing.

That being said, I greatly appreciate everything the devs that worked on the Player have accomplished over the last few years (particularly Jim Corbett, Lee Thomason, and Matt Kaufman). Thanks for tilting at the windmill.


Having seen the Flash Lite source code back in the days before iPhone, I'd say there wasn't a lot of effort there at all. The code was pretty bad.


Flash Lite was a hack-n-slashed fork off the venerable (and briefly open-source!) Flash Player 4. The portability and modularization of the Flash code has improved since 1999.


Well, that certainly explains a lot. The sad part is that a lot of people spent a lot of time trying to get that code to work on mobile devices in the early 2000s.


It was big in Japan. A lot of dudes made a ton of money off Flash Lite development.


Out of curiosity, which half was true and which wasn't?


Bullshit: "Adobe’s Flash products are 100% proprietary." Well, except for the SWF format, the mxmlc SWF compiler, the Tamarind interpreter, most of the popular video codecs, the FLV container format, AMF, RTMP... And I could go on. Huh. Okay, I guess the only things that are "proprietary" are the authoring tool (although you're welcome to make your own) and some very important parts of the actual Flash Player (if Adobe had open sourced the player 5 years ago, we wouldn't even be having this conversation).

"The full web." Flash is still an important part of the full web. There's a lot of stuff that you will just never be able to do with the browser alone (capture video, do p2p networking, etc.) or that will be so difficult to implement amongst the many competing browsers that it's only economically feasible for giant companies to develop web applications. But Apple doesn't want web applications to be able to compete with the capabilities of native apps that they make a profit on in their app store. "Touch" Adobe's APIs for Touch work pretty well, but they require developers to update their applications. Not particularly hard (compared to porting a flash game to Obj-C anyway).

True: "reliability, security, and performance" Enough said. "Battery life." Software based rendering of graphics and decoding of video is obviously going to be way harder on battery life. Middleman lock-in Apple was burned in the past by this, but it doesn't seem like that much of a threat now.


Hmm...

Where can I download a full Flash plugin made by another company? Not the partial open-source implementations that only do a small part of everything that is 'Flash'. It's like saying Mac OS X isn't proprietary because it uses a lot of open-source pieces.

"(if Adobe had open sourced the player 5 years ago, we wouldn't even be having this conversation)"

But they didn't, that's the whole point.

Did you read 'the full web' part? Jobs says that most of the videos Adobe argues one won't be able to see are also available without the Flash container and other things like games just won't be available, but there are nice games in the app store to make up for it. He's admitting not 100% will be available, but it's not as bad as Adobe is making it sound. As someone who removed Flash from my desktop browser about a year ago, I agree.

"But Apple doesn't want web applications to be able to compete with the capabilities of native apps that they make a profit on in their app store."

Why do people keep repeating this? Do they think if they repeat it enough, it will actually be true? How much does apple make if the app is free? Why is iOS Safari consistently the most standards compliant mobile browser? What percentage of Apple's profit was contributed by the App Store? So allowing Flash would have killed the app store? No way because Flash performs so badly on mobile devices, which is why it isn't on iOS devices.

""Touch" Adobe's APIs for Touch work pretty well, but they require developers to update their applications."

Well, then that does nothing to help the 'full web' argument now, does it. That's great if the APIs work pretty well, but what about the thousands (millions?) of flash apps that probably won't be upgraded to those pretty nice APIs. Not much of a 'full web' experience then.


"But Apple doesn't want web applications to be able to compete with the capabilities of native apps that they make a profit on in their app store."

I don't actually hear that many people repeating this, but to expand a little bit on this, it's not just apps, it's also media content. The Flash ecosystem provides one of the few forms of DRM that the big movie studios have deemed acceptable. With Flash off of the iOS web platform it makes it just a little bit harder for users to buy content from someone other than Apple. Do you truly believe that there aren't motives beyond providing a better user experience behind what Jobs laid out in that article? The "break even" story about what the app store makes is a bunch of bullshit too. If Apple's operating expenses are truly 33% of every sale, then they are the least efficient company on the planet.

"Not much of a 'full web' experience then."

Compatibility is actually not all that bad. For your standard restaurant web site or photo portfolio, they're still usable even without being updated, the experience is simply not optimal. Still, having it at all is better than having nothing. The full web is about those millions upon millions of flash animations, restaurant web sites, e-brochures, photo galleries, and digital artworks, some of which date back to the late 90s now. A big part of why I'm disappointed by Adobe's decision is that that stuff is going to become inaccessible to a lot of people going forward. It's like the decision not to bring Hypercard over to OS X. Other technologies had already succeeded it, but there was a lot of useful and interesting stuff done in that format that is more or less lost now.


>The Flash ecosystem provides one of the few forms of DRM that the big movie studios have deemed acceptable. With Flash off of the iOS web platform it makes it just a little bit harder for users to buy content from someone other than Apple.

For streaming? Netflix uses Silverlight for their DRM on PC's, and uses their own homegrown DRM schemes for iOS and Android.

For mobile devices, companies like Crunchyroll, Hulu, Comcast and AT&T all have native apps for iOS and Android. Those don't use flash either, and perform easily as well as Flash.

So no, it's not the only solution that the studios find acceptable. Plenty of other solutions exist.


"one of the few" != "the only"


> How much does apple make if the app is free?

$99/year from iOS Developer Program. Even free native apps reinforce Apple's platform lock-in. Cross-platform web apps lessen users' dependence on iOS.


Doubt that would even cover the bandwidth.


> Did Adobe ever put a serious effort into mobile Flash development?

Yes. The Adobe Flash Player team, believe it or not, is easily over 100 engineers working on a variety of core and related projects (but not including the Flash Authoring, Flex Builder, and Adobe AIR teams). Of those, about 10-30 engineers are dedicated to Android depending on management edict of the week.

The entire Flash Runtime org (including QA, managers, and the AIR team) is over 400 people.


One of the nicer things about Flash is that it's easy to block en masse, which cuts out on so many visually distracting animated things.

One of my worries with HTML5 is that we won't have a good heuristic for preventing animation and video.

As it is, YouTube occasionally serves me up their HTML5 video player, and it's a significantly worse experience than the Flash one, for the simple reason that it autoplays, whereas FlashBlock will stop Flash autoplay. I can't tell you how many times I've been listening to a video, wondering why it sounds so awful, and then figuring out there's another video autoplaying in a background tab.

So we (or at least I) will need some way of killing / freezing HTML5 canvas, video etc. elements until the user assents to their animation.


for the simple reason that it autoplays, whereas FlashBlock will stop Flash autoplay. I can't tell you how many times I've been listening to a video, wondering why it sounds so awful, and then figuring out there's another video autoplaying in a background tab.

The default behavior in Safari is not to play any content until the tab it's in has been focused - that goes for HTML5 video, Flash, QT, or what have you. Constant spot of annoyance for me anytime I'm forced into a different browser.


Chrome and FireFox have FlashBlock extensions and Chrome has a "Click to play" option in about:flags (but unlike Safari it is turned off by default.)

These features should behave similarly except it sounds like in Safari players are enabled by default when you visit a page but for these other browsers you will have to manually click on things to start them playing.


Safari has a similar plugin called ClickToFlash, but no Chrome-like option as far as I know.


FlashBlock just uses CSS to hide certain <OBJECT> and <EMBED> elements from the page; the same techniques work for <VIDEO> and <AUDIO> (My MuteTab Chrome extension (http://www.mutetab.com) does this) and I'm sure the same could be done for <CANVAS>.

If you want to completely prevent animation of the page, though, you'll need to disable JavaScript completely (as you can currently do in the NoScript extension), although this could be troublesome if the site requires portions of the JavaScript to operate.


Alternatively you can selectively block elements on the page by any DOM criterion. I use GreaseMonkey and jQuery for that, and I hear AdBlock allows you to ban DOM elements with a right-click.

As for trivial blocking, I observed an increasing number of <blink> Flash objects falling back to just as much eyesore animated GIFs. I don't think I'm ready to fall back to lynx/links.


But you can't block CSS animations though.


Will ads use CSS animations? The most obvious candidate for ads seems to be canvas which is trivially easy to block. Just like Flash.

Either way, the way the advertising industry works there is going to be some sort of de-facto standardized way ads will be delivered – if only because those who display ads on their sites have to know what to expect and those who make ads want to re-use them everywhere. Finding those ads will be easy and I expect ad-blockers to be no less effective.


You can if the relevant files are served from a distinct location, which would be the case for ads.

If it's more closely integrated, then you have to either stop using the site or use something like GreaseMonkey.


A Chrome/FF extension to disable autoplay seems trivial.


On the contrary, disabling CSS transitions and animations is going to be a dead easy way to disable animation without losing any functionality.


Vimeo HTML5 player does NOT autoplay.


Flash has been dead tech walking on mobile ever since Apple passed on it after years of vapourware promises and getting nowhere fast with performance issues -- ones that still persist today on the devices that actually have a Flash player.

Jobs especially was roundly criticized for his public stance on this, but in the end, he was proved right: Adobe never could get Flash working properly on a low-powered device.


For sure the fact that Apple/Steve passed (violently so) on Flash made it mobile DOA, but is it possible the actual frame/second rendering on Flash 10.1 was actually better-performing than HTML5? These tests are from 2010 but suggest so.. http://www.youtube.com/watch?v=DUWo19BcC7s (April) and http://www.youtube.com/watch?v=sFFax1oYyBE (September).

Not so sure Steve was proved right so much as it was self-fulfilling prophecy (from the mobile deity himself)?


Flash definitely outperforms HTML5 on mobile and desktop: http://www.craftymind.com/guimark3/


The native Android browser isn't very good in JavaScript (not JIT? old JIT?). Firefox Mobile and Opera Mobile outperform it greatly. That's the advantage of a real open standard: you can choose your implementation.

No such luck with Flash.


But which eats more battery?


The slower one, as the CPU must stay on longer. Not a good argument, hence.


If true, I believe it would be healthy for the mobile web.

There are still developers out there who believe that Adobe will come up with a decent mobile Flash experience, even though it has failed to deliver on those promises for the better part of a decade. If Adobe just comes out says "Not gonna happen", we can all move on and invest our time and energy in technologies that actually have a future.


Unfortunately, users are still going to be demanding for a while that their online flash games work.


According to the article, Adobe isn't giving up on Flash altogether. They're simply admitting that Flash does not and will not work on mobile devices.

The people who currently play Flash games on the desktop will continue to be able to do so. However, if a game developer wants to offer a good mobile experience, they'll have to make it using web standards. And if they're going to do that, why build it again in Flash for the desktop?


That's the sane reaction people like you and me might have, but it does, quite unfortunately, not match reality at all.

Google is heavily advertising Android over iDevices as having Flash support. Users know this and expect Flash to work. It works, sortof, on the default browser. It didn't work for the longest time on Opera and Firefox Mobile. Opera now supports it somewhat reasonably (presumable due to a truly herculean effort of their developers to figure out the real API without any meaningful Adobe support), and Firefox Mobile barely in some of the latest Nightlies. Especially due the latter adding support (for a non-open standard!), I think it's a clear illustration that the feature is considered a must have if you want to have significant user penetration on Android.

Consider also how much effort Google is putting into helping Adobe make Flash more secure. Think about why they bother.

The problem is that Flash websites are out there. The investment has been thrown into the black hole. People who payed for these sites are going to sit on them for a while. And there's quite some sites that only work on Flash.

It only takes one of those that you want to visit, such as a restaurant or whatever, without non-Flash fallback, to see how annoying it is not to have Flash. You can't visit the site, period.

So you must support it until all those sites are rooted out. And Adobe now even officially doesn't give a shit.


Google heavily advertises flash support because it's a point of difference.

And while it's true that there are flash-only websites out there, most of them are barely or completely unusable on mobile -- because they require a hovering-and-clicking input device or enough processing power to saturate a desktop CPU or is laid out to suit a large display.

The number of websites that require flash AND would work fine on a phone is vanishingly small.


I believe your claim is completely and utterly wrong, but I don't think there's a point in discussing much without hard data. As I pointed out above, the 3 browser players on Android seem to think Flash support is quite important. Surprising if it is something nobody wants.

Laid out to suit a large display? Jeez, an Android phone in portrait has as much vertical resolution, or more, as a cheap laptop. Even in landscape its not a 2:1 resolution advantage, and the phone can still scale the content, too.


"the 3 browser players on Android seem to think Flash support is quite important. Surprising if it is something nobody wants."

I'm sure there are folks who want it. It just doesn't work. And Adobe has acknowledged that by axing the project, after promising to get it right for 6 years straight.

Let's disregard that mobile Flash is limited, buggy, CPU intensive, and battery draining. Most Flash content just doesn't work on small screens that are meant to be manipulated with fingers. The 'hover' action alone is causing web standards programmers head aches -- preparing Flash interfaces for mobile requires > ten times as much work, which the vast majority of Flash creators will never do.


Okay then, Google and the 3 browser players on Android advertise flash support because it's a point of difference.

As to whether anyone wants it, well, what they really want is to be able to browse all their favourite websites. Fair enough, but forcing the web to stop treating a proprietary add-on as mandatory is a legitimate (if imperfect) way of solving that problem.

Flash sites designed for a large monitor are a pain to use on a mobile device, and it's not because of resolution, it's because they're often combined with smallest-possible typeface sizes and a layout that frustrates if you have to zoom in. Believe me, I've used enough restaurant flash-sites that are all but impossible to navigate on my Android.


They don't have to make it for web standards, they just need to recompile for mobile. They are dropping the flash player not the whole flash platform on mobile.


What percentage of online Flash games (a) work at acceptable speed on a phone and (b) can be sensibly used with a touchscreen? I'd be astonished if it's more than 5% or so.


95% of them will never work anyway since they rely on having a pointer and hover actions.


Many developers already moved on, no need to wait for Adobe's permission to do so.


Agreed, I have too. But this way, with mobile Flash and Silverlight abandoned, we can all put more energy into web standards, even the developers who aren't usually ahead of the curve.


Given how bad Flash is on Linux and OS X, it was no real surprise that they couldn't get it right on mobile. The two platforms on the desktop that they put few resources into became the basis for the biggest mobile marketshare.

Adobe spent so much effort on punditry on their blogs about how everyone else was wrong and reviewers and Apple were so unfair. This is going to be a bigger PR problem then it should of been.


I never thought I'd say this, but thanks, Apple.


This is the end of flash. Mobile is the future of computing and if Adobe is giving up on flash for the mobile web, then they're giving up on flash for the entire web. The statement that they're shifting focus to air apps is to save face. The only reason people want to build AIR apps is because they already know flash from working with it on the web.

And you know what? That's awesome. What the interactive web needs, flash, canvas or HTML5, is creative tools that people like adobe used to be really good at producing.


I think you're talking about 2 different things when you say "the end of flash".

If you mean the end of the flash runtime for mobile browsers, then that's accurate.

If you mean the end of flash as a dev platform (that is as3, flex, etc.), I didn't get that at all from the article. As it stands, I can write one app that will work on any desktop browser as well as across a growing range of mobile devices, including iOS. The performance really seems to be near native on iOS (for an example, see Defenders HD--I have no relation whatsoever with the devs but I do know it was done in flex).

Speaking for myself, I really like as3 and flex for certain tasks and hope Adobe doesn't abandon it as a dev platform.


True, I'm talking about two different things. Three, really: mobile flash, desktop browser flash, and the app-packaged flash solutions like AIR.

I don't think we can really split mobile web flash from desktop web flash, so I think that Adobe is fully aware that browser flash is dead, and I can't see them putting any real resources into the desktop version.

Browser flash has, since it was omitted from iOS, limped along under the promise that it was coming to mobile devices "any day now". And every crappy implementation was met with "well you should see it on the next version of [android os|android phone|blackberry]".

But that promise is gone, and browser flash is now a dead product with a rapidly shortening shelf life.

The reason I think the death of browser flash is also going to kill AIR (Packaged Flash), is because it eliminates the easy entry point that the AIR platforms had. AIR was barely successful only because it took advantage of a huge, huge ecosystem of people writing browser flash.

But that ecosystem has hit it's high water mark and is now officially receding: New developers aren't going to go out of their way to learn browser flash, and people aren't going to pick packaged flash over other tools if they don't already have a vested interest in the language and the runtime.

It's ok, but it's just not that great, and at the end of the day true "write once, run anywhere" isn't that important (and it's a bit of a myth), and if it is for you, then write a web app.


I seriously wonder what this means for Flash on the desktop.

The responsive design movement keeps throwing these Morgan Stanley and other reports out there that predict that by 2015, people will be using mobile devices more than desktop devices. What incentive does Adobe have to continue develppig Flash for the browser?

Their statement eludes to nearly ubiquitous support for HTML5 on mobile devices. When IE10 comes out, will that level out the desktop market?

I always hear Flash developers saying that Flash does so many things better than HTML5. But if nobody's able to view the content because nobody wants to develop a Flash player for the target platforms, what does it matter?

I'm not saying I think Flash on the desktop is dead, but I could certainly see Adobe moving that direction. They're turning Flash into a platform like Titanium or PhoneGap, where it generates mobile apps, mobile web apps, or desktop apps. They're already doing that now. If that works, and I suspect it will work quite nicely, then I'd see even less incentive for them to support building "applets".


This is going to do a lot of harm to Flash on the web. Now we know for sure that any Flash web pages will never work on mobile devices. Mobile apps are great but I still think the majority of people will use their devices as web browsing devices.

Finally, it really destroys your trust in Adobe. Will they discontinue their mobile AIR tools if they have a few more bad quarters?


> Finally, it really destroys your trust in Adobe. Will they discontinue their mobile AIR tools if they have a few more bad quarters?

That's an interesting and relevant question, but it also nicely shows why the whole idea of requiring proprietary plugins to view web content was a bad idea (tm) in the first place.

Hate to say it, but Jobs was right about two things when he defended the lack of Flash support on iOS: it performed like crap, and it was a liability since you'd had to rely on Adobe to support it.


It performs better than HTML5 on mobile.


Flash in some ways delivered what Java promised to. Truly one code base on multiple devices. Supporting many devices and OS' is what Flash conquered. I kind of chuckled at the iOS statements about Flash, but it seems to run OK on every mobile device I ever got to try it on.

Potato, Potatoe.

If browsers are the new Universal Interface to conquer and standardize, there's a new problem. We now have variety in implementation of standards, making those standards tough to use.

Where Flash was when it was 2-3 years old isn't much different than where HTML5 is for those of us who have been around long enough... except there's a lot more browsers out there than there were Operating systems.

Flash could control how efficient it was, or wasn't.. but who will make sure all the browsers process HTML5 efficiently?

Are we really aware of how much we're going to get ahead, and how soon?

How much time will I spend recreating what Flash, or something else could do for me already today, so I'm not just trading some great HTML5 features for spending my time coding stuff Flash has?

I don't use a ton of Flash or HTML5 right now and don't foresee it. When it's the best tool, I use it. Where it's not a complete tool, I'll think twice.

This is one area though, where Adobe's expertise might be second to none -- making it work identically everywhere as best as possible with gracefully degrading libraries.

I hope their recent acquisitions serve as fuel for solving a problem really needing solving.. by them or someone.

Should be interesting to see what happens when we get what we wished for, the devil we don't know vs the devil we kind of did.. :)


The idea of Adobe focusing on using Flash to create native apps is a great idea -- and I'll think they'll do well with it. There's an army of folks who know ActionScript who don't want to learn Objective-C, and there are tons of apps which are created for ad agnecies where development speed matters.


There's an army of folks who know ActionScript who don't want to learn Objective-C, and there are tons of apps which are created for ad agnecies where development speed matters.

Those apps tend to overlap with the tons of apps that nobody wants.


Well sadly you don't know if an app is wanted until after you ship it! And while you;re correct that there are many second rate apps, there are also many novelty apps that a niche audience (and it doesn't have to big group of people) craves. For example only a small audience may crave a "Red Bean Ice Cream Finder" but if it's you're favorite flavor you gotta have it...


They've had the tools to do this for a couple of years, and it's been uncontroversially acceptable under app store rules for a year. It's barely ever used. I don't see any reason this would change.


I really hope Adobe can make the transition to a standards-based world fast enough for them to remain a significant player. It is so hard for a mega-company to wean itself from the fat margins of a proprietary world they created.


They've already been making this transition for at least a year and probably planning it for even longer than that -- look at Muse, look at Edge.

Adobe doesn't give a crap about the Flash Player for its own sake, it was just a loss leader for their tools business, which anyone who has been paying attention would have noticed started leaning towards html and away from Flash a while ago now.


Not to mention Phonegap, which is now an Adobe product thanks to their recent acquisition of Nitobi.


Since Adobe's fat margins were from authoring tools, presumably that opportunity still exists. AFAIK none of the existing HTML5 authoring tools are close to Flash in power.


When you own both the authoring tools and the runtime, the world is your oyster. Sure, HTML5 authoring tools suck today, and it will be a huge boon if Adobe leads the way to the promised land. But the barriers to entry for others to then go the same way is so much lower than in Adobe's previous environment.

Well, it will be very interesting ride over the next few years!


But the barriers to entry for others to then go the same way is so much lower than in Adobe's previous environment.

Can you not just target Flash Player? Seems like the barrier to entry is going to be the same as Adobe's in either case, except that with Flash, Adobe must also maintain Flash Player.


Flash is not open. It's also a moving target for everyone but Adobe.


I agree, but on the HTML5 side, we have not one but several moving targets, and IE is hardly open.


Disappointing as it may be, it's realistic. I could never see mobile devices being capable of loading and running flash based games or web environments consistently or seamlessly. It just requires too much power the device doesn't have. Even the iPhone 4S and iPad 2 dual core technology aren't up to the task, and I believe that's the closest mobile ever came to supporting flash.

But even mini laptops can just barely handle flash websites with glitzy introductions and interface. A phone can't handle that, it's outdated and inefficient for smaller modules of power.


Flash for video works beautifully on the Transformer. I use it to stream anime all the time. I do hope I will still be able to do so, one way or the other.


I run flash in a decent way in my Nexus S. It is not the best experience in the world (as usual when dealing with Flash) but it works.


Hm...just curious, can it handle a flash game?


That's a developer issue, not a platform issue. A glitzy HTML5 application/website will perform worse than HTML5.

Benchmarks: http://www.craftymind.com/guimark3/


That's why almost no one makes 'glitzy' apps in HTML5 - and this is, actually, a good thing. However, I expect it to change once Adobe tools for HTML5 will mature and gain traction. As was the case with Flash, these will be more popular among designers than among developers and - with all due respect to our fellow artists - we all know how it ends. Hopefully better hardware, GPU acceleration and WebGL support will be widely adopted by then, making performance issues less significant.


As one Flash developer told me once, there's a strong temptation to indulge in "flashturbation"...


As a game producer, my understanding and limited experience is that HTML5 for games isn't robust enough to handle Flash-like gaming. In particular I'm thinking of sound issues.

Am I correct?


Basically, yes.

Someone will probably come along and hem and haw about the various competing sound APIs that everyone is working on right now. Then someone will say that Flash can do crazy 3D games, but Canvas/JS can't. Then someone will say that WebGL is coming along nicely. But not on every browser, and not with any consistency. And so on and so forth.

Switching to the Canvas/JS stack from AS3 and the latest Flash Player APIs is honestly like stepping into a timewarp to the year 2000 when Actionscript 1 was just coming into its own.


Flash in mobile web browsers always felt awkward and sluggish to me. I'm glad that they'll be focusing their mobile efforts towards polishing AIR


But isn't AIR just flash? I am somewhat confused.


AIR is a deployment platform for both WebKit and Flash, and as of AIR3 the support for HTML5 has improved quite a bit:

http://www.adobe.com/devnet/air/ajax/articles/air_and_webkit...


I guess next step towards HTML5 is moving off from mobile native development(iOS, Android, Windows Phone).


I don't think we should move off completely. It's best to have some redundancy in technology.


Good riddance!


Finally they came to their senses. They had good authoring tools but not-so-great flash runtime. Retain the former but use highly competitive HTML5 browsers as a standards based runtime instead.


Also, 750 jobs lost. Isnt that a lot? That is sadder than the loss of a plug-in. Adobe seem to lay people off quite frequently, or is it my selective recall?


Flash was how it was, but it was quite one -- HTML has never managed to be consistent and predictable technology, and I doubt HTML5 could change anything...


The problem is, right now it is easy to circumvent a lot of annoying ads by blocking Flash. If everything goes JavaScript, not so easy.


Maybe devs will start to realize it is less/not about them and all about their target audience/user


I think it is not because the Flash runtime lost, but because WebKit has achieved ubiquity. Think about it, the reason we needed these runtimes in the first place is because web browsers have their own quirks.

However, with WP7 languishing with less than 2 digit market share, what's left in the smartphone markets are essentially webkit-based browsers on Safari and Android.


What does that mean for RIM and the PlayBook?


They're not killing AIR for mobile (though I can't see it getting much attention in the future), but the PlayBook is essentially a dead platform walking anyway.


I think that is a very important question. Flash has been key to RIM's strategy.


Adobe still says they're supporting AIR, but RIM seems to be focusing more on HTML5 for the PlayBook now as well.


Some loved it, some hated it. Others didn't play with it :)


I had honestly forgotten about Flash.


It's very nice to see Adobe embracing open standards. I look forward to the day when I can completely give up Flash (for Hulu) and Silverlight (for Netflix) completely.[1] They are the source of almost all the issues and browser crashes I've experienced.

I never would have guessed it in the 1990s, but in this day and age, native applications and open web standards are the way to go. Java held such promise for time, as did flash, etc.

I wonder if their declines are due to their essentially proprietary nature, or due to poor technical choices made by their stewards. (though the latter could be called an example of the former.)

[1] In fact, since Hulu is doing so much better than netflix these days I think we'll be giving up netflix completely before too long. I would have thought the ads would be an issue, but Hulu has streaming down solid, and Netflix for whatever reason is more flakey.


I don't think for a second that Adobe's decision was motivated by the open nature of HTML5 itself. If anything being open is a downside for Adobe in their current market position.

I don't think the "poor technical choices" of their product are explained by its proprietary nature (MP3, H264 are example of the contrary) but they are for sure the reason they're moving away from it.


The hardware just wasn't there to do software rendering and won't be yet for a couple to few years on mobile, by then it may be too late. Hardware acceleration is needed on devices.


My colleague will be meeting one of Adobe Senior VP's in a few weeks. For sure I'll send him a few questions to ask. A lot about HTML5.


It sure is a shame that they never did this before Steve died.

Would have been a nice going away present.

:(


Why does an entry titled "Adobe ceases development on mobile browser Flash" link to an article that starts "Our future work with Flash on mobile..."?


Because you didn't read the rest of the sentence?

"...devices will be focused on enabling Flash developers to package native apps with Adobe AIR for all the major app stores."


The title says focusing on HTML5, the article says focusing on native apps with AIR.

"ceasing development" and shifting focus are not the same thing.


Apple wins! Jobs always wanted developers in a "exclusivity" arrangement. Adobe busted out and supported Windows as Apple floundered. Jobs always wanted to set an example to those who leave the village. Looks like Apple's refusal to allow flash on mobile will teach all the villagers a lesson. Who is number one? Apple is!




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

Search: