What's new in Flash 11
adobe.com
adobe.com
And yet...
And yet I'm still planning on switching my web app to HTML5.
This is coming from a guy who's sunk over two years of development into Flash. It's not because the runtime is buggy and/or crashy (it is, but it's not that bad). It's not because it's so much easier to develop in HTML5 (I will dearly miss AS3 and generating art assets in Flash). It's not because HTML5 has more useful features than Flash does (Flash has more, and they're implemented more reliably).
I'm doing it because Flash doesn't run on tablets [1]. And that's what my users want. I don't have the time to develop three native clients for iOS, Android, and Windows 8, so HTML5 it is.
I will miss Flash dearly. I'm praying that between some combination of backbone.js, easel.js, raphael.js, and inkscape, I'll be able to build something as expressive as my old system.
[1] Those new Android ones included. I've used those tablets that "support Flash". It's a nightmare.
Yeah, same here .. writing HTML and Android apps. Even our stock-take app for inventory control, I wrote it in SWT and deploy via WebStart.
I know.
I'd be interested in looking into it again if you can truly achieve the level of compatibility, penetration and dependability (performance-wise) that you can achieve with flash. Any pointers will be appreciated.
If you are talking about something more static (e.g. a non-game application or a fairly static game like a match-3) it's probably less of an issue.
I agree that the app store has more potential for making big money, but there is also a good chance you'll make very little (http://www.dilbert.com/2011-02-12/).
Of course you don't really need to choose, you can make your game for both flash & mobiles :)
i dont think develop in html5 is more productive than in flash. backup your comment with some evidence please
If Adobe "got it" this list of "What's new" would include words like "removed" and "deprecated" and "eliminated." Those words don't appear once. They've just thrown more stuff into the kitchen sink that was already overflowing.
They have amazing developers, but there is a reason Flash is the beast it is, and this isn't moving it in the right direction in terms of delivering a stable, secure and fast experience.
No doubt this is going to be the most fucked up flash version ever... I can not wait to read about the sploits because the one thing you did not read about is the new 'executable stack protection' mechanisms.
I am just saying the 1980's called and they want their software back...
Having a time machine is not the same as "getting it".
Adobe is however working on a html5 builder called edge - http://labs.adobe.com/technologies/edge/ Looks pretty good from the face of things, and to be honest I think this is the right direction for them to take.
It must cost them a fortune to support Flashplayer (which they give away for nothing). I'm sure they'll drop it the moment there's enough HTML5 penetration on par with Flashplayer's capabilities.
It must cost them a fortune to support Flashplayer (which they give away for nothing)
The cost of supporting the free Flashplayer is paid for by the lock-in that this enables. Afterall, Dreamweaver doesn't have the kind of market dominance that Flash Professional has.
The player is merely a medium, though by authoring it, Adobe can advance the state of the art more quickly than the browser makers can agree on anything. This does make Flash Professional a more compelling environment.
But let's pretend for a moment that 95% of browsers got feature-coherent on the level of Flash. Why would Adobe care if the player were "all browsers", instead of Flashplayer?
Would they care because if they were targeting all browsers, they'd be effectively targeting a level playing field in terms of the base technology? Would it end up like Dreamweaver, which also targets a common base technology?
I'm going to argue "not necessarily, and in this case, no". And the reason is that anyone today can target Flashplayer. The playing field is already effectively level on Flash. Tons of software outputs SWFs. There are even Flash Professional wannabes, but they're not as good as GIMP is compared to Photoshop, and we know where that thread leads.
Speaking of that, consider Photoshop. It is hugely popular in spite of the fact there is zero infrastructure lock-in. Literally bazillions of programs can view and edit Photoshop-produced files. It's thriving while Dreamweaver, relatively, stagnates.
Dreamweaver's lack of dominance, IMO, is likely related to other factors. (I'm not sure why, but I don't know any professional web developers that use it.)
Iff Adobe could get Flash-quality and quantity on 95% of browsers using HTML/CSS/JS, I'll still bet you a pint they stop work on the player. Chrome 14 just added audio synthesis, so we're getting there!
Adobe's not going to stop working on the Flash Professional-style tools, though, even if it is outputting HTML. People buy Flash Professional for the features it provides both to the designer and for the end result. No one actually cares if there is a plugin in the middle or not.
Few people stand up and complain about the poor bytecode in SWF or the poor encoding inside PSD files, while _everybody_ used to complain about the code produced by dreamweaver and how much better it was to write HTML/CSS/JS by hand.
Probably once web devs stop looking at the "generated assembly" tools for programming at a higher level will be more successful.
Why? If I wanted that I would write HTML5 in the first place. What benefit would flash give me?
Your definition of "got it" is for adobe to shut flash down.
http://labs.adobe.com/technologies/wallaby/
It's woefully limited right now, but it's obvious Adobe's exploring that avenue.
Still, if you look at what they've done in the past couple of years you'd see a lot in trying to revert that situation. Forcing a maximum tick rate of 60hz (was 120), dropping memory use and performance (tick rate goes to 2hz when hidden on a separate tab, or out of the screen); coming up with new browser APIs so the browse can control the plugin performance; and on and on.
They do deprecate a lot over the years. However, is "eliminated" something people really want? The platform prides itself in the fact that SWFs that worked for Flash 2 still work today, despite the changes in the language and virtual machine. So unless it's a change of security policy, nothing breaks or is "eliminated"; as a developer, I find this to be a good thing as I don't have to have a client coming to me after 6 months complaining about something not working anymore.
Flash is a platform that allows people to do a lot. Including shitty binaries. And there's not much defense against it.
And personally I still have my browsers crash more because of shitty HTML/JS than Flash. YMMV.
It's worth noting that Adobe is very reluctant to deprecate API's. They've historically preferred (with AVM1/AVM2) bundling new VM's into the player over deprecating features. And any deprecation must be version-specific, and tends to be more for API consistency than anything else.
What really disappoints me is Adobe's reluctance to support really neat Labs projects like Alchemy. Want to run C (or any language which compiles to C, like haskell!) in the browser? It's been possible since Flash 9, way before NaCl. Official support is coming soon but it's a bit too bad it took so long.
The (deprecated) via-c backend of GHC compiled to something that looked like C, but depended on a horrible Perl script to post-process the object output.
It does have an LLVM backend these days, though, maybe that can work?
WHAT? Are you serious? Please educate us as to how that is done.
E.g. - the developer asks for an runtime created asset that doesn't exist anymore or there's a condition under which a block of code runs forever (actually in this case the flash runtime stops after 15 seconds of activity and allows the user to kill it but it's still a "crash" insofar as the user is concerned.
I suspect Flash's (lack of) stability was one of the reasons for considering this design decision in Chrome.
An unhandled exception due to referencing a null object that caused the Flash app to crash? Developer's fault, not Adobe's.
A crash that brings down the entire Flash runtime (and possibly the browser hosting it)? Adobe(or the browser vendor)'s fault, not the developers.
Even if the developer does something horribly stupid in ActionScript, the runtime should never die due to developer error.
I honestly can't remember ever seeing a Flash crash actually bring down the the browser. Maybe I've been very lucky.
I see that I'm getting down voted for calling 'ED' out on his sweeping statement where he did not define what he meant by a "crash". Note that for many users a "crash" is when what ever App/game/web-page they are running stops with some error and they can't continue. My basic point is that many (most??) of these, in my experience, are down to developer error.
Many developers seem to have an irrational "hate-fest" going against Flash. For sure there's a lot wrong with it but, for me, all to often "its not the tool but the craftsman at fault".
I can't tell if you're saying you know or not, but Alchemy is becoming an official product:
http://blogs.adobe.com/flashplayer/2011/09/updates-from-the-...
I'm not a huge Flash fan or anything; I don't care much for Actionscript as a language and I'm constantly looking at switching to HTML5, which I'm sure I'll have to do eventually. But Flash crashes aren't really an issue for me at all. I wonder if your poor experiences in Flash are created by the developer of those specific Flash applications that are crashing.
Personally, I think the Flash 11 features are amazing and, even if Flash may be losing relevance, I think Adobe's going in the right direction with it.
My own anecdotal experience from coming across flash sites while browsing for the last 11 years (that I remember) and spending two years developing flash sites, is that it has always been slow and crashes often. And most importantly the stability hasn't seemed to improve over time like everything else on the internet.
Especially on OSX.
YMMZ. I'm using Chrome right now and I'd say despite playing lots of Flash games and watching players that use Flash, most of the crashes that happen are due to the browser.
> most of the crashes that happen are due to the browser.
How do you know that these are not caused by Flash plugin?Contrarian view but I see flash improving its lead on html. Adobe doesn’t have to deal with a bureaucratic standards body and can act decisively when making platform changes. Ex: I’d like to see MS, Mozilla, IE, Chrome, Apple, Opera all agree to implement similar features in Flash 11 (and work the same in each browser). Then I’d like to see them agree on new feature sets when Flash 12, 13, 14 come out etc.
I just don’t see how five browser vendors can equal the agility of one flash vendor. Too much red tape in the html congress…
Yes, Flash is proprietary and it doesn’t work well for mobile. All I can say is that I’ve been burned one too many times by IE not showing CSS table borders on empty cells (last time I checked IE8 still requires that damned ampersand in each cell!). I’m fed up with browser incompatibility. All of the JavaScript frameworks (and now with Google making Dart) confirm that JavaScript is inherently outdated and broken. I gave up on html for Flex and am not looking back.
Just my humble opinion…
People who say "use HTML5 instead of Flash" obviously have limited experience in actually building HTML web apps and sites.
Ever tried making a javascript pre-loader? Not gonna happen. There's no jquery.bytesLoaded to the rescue. Even before the web-app has loaded, HTML is struggling to stay in the same game as Flash or native apps. Pre-loading sound files and other assets and relaying the bytes loaded to the user as a progress bar just isn't possible in HTML. You might be able to cook up a half-baked progress loader in JS, but it will suck, I promise.
It's obviously true that for SIMPLE things like menus and other interface features, HTML5 is the choice. But when you start getting seriously rich and multimedia heavy, then you need flash or native apps. And I prefer the Flash development and deployment freedom over native app lock-in any day.
Flash should be allowed as an optional plugin on iOS devices, simple as that. Then people who want it can have it, and people who cry about Flash can turn it off and stick with their iTunes account.
As for mobile, neither Apple nor Microsoft will support it. Flash will be around for years, but platform support is on the wane.
The native JSON / jpeg-xr / LZMA support will certainly make flash feel somewhat more lightweight, but I don't think it'll be enough to make it not feel bulky.
http://kb2.adobe.com/cps/141/tn_14157.html
http://www.cultofmac.com/67699/uninstall-flash-for-mac-os-x-...
Dip into Chrome for a couple games and to skip QuickTime bugs affecting YouTube/Vimeo (QT loads the whole stream, then drops and begins re-downloading if I pause and resume).
Now that the rdio client is Flash-free it’s pretty easy for me to live without Flash.
The only time I switch is to watch youtube / vimeo or a news video, very occasionally youtube gives me a html5 video which is nice, I dont understand why the rest dont already support html5
https://chrome.google.com/webstore/detail/gofhjkjmkpinhpoiab...
For those who want to take melling up on this challenge (and I would encourage it because it's an eye-opening experience to see much your favorite websites depend on Flash, or not), this extension is a nice bridge.
Flash embeds aren't loaded automatically. Instead, a placeholder appears instead. Clicking on that placeholder loads the Flash file, so you can selectively choose which Flash embeds to see.
On their iPads, smartphones, etc.
If I understand correctly, they must have used the code developed by Igor Pavlov, the author of 7z, who made it LGPL. LGPL means his code must be in a separate DLL, can anybody confirm that?
Note that this guy, to which Adobe refers:
http://blog.kaourantin.net/?p=124
claims it's public domain, but it's not:
LICENSE
-------
7z ANSI-C Decoder is part of the LZMA SDK.
LZMA SDK is written and placed in the public domain by Igor Pavlov.This one states the contents of the sdk is in public domain. It seems to apply only to the core lzma compression/decompression code, not to the full 7-zip util (which, I agree, is covered by the GPL).
One would have to check more precisely, but I suppose the Adobe guys did that.