Flash Is Dead; Long Live OpenFL! 166
First time accepted submitter lars_doucet writes "I am a 15-year Flash veteran and nobody hates to say this more than me: Flash is dying, and the killer is Adobe. Where to now? HTML5 doesn't help me with native targets, and Unity is proprietary just like Flash was — 'don't worry, we'll be around forever! And so sorry about that neglected bug report — we're busy.' I'm putting my bets on OpenFL, a Haxe-based, fully open-source implementation of the Flash API that might just please both Flash refugees and longtime Flash haters alike. My article discusses my experiences with it and gives a brief overview for newcomers. In short: I can keep making Flash games if I want, but with the same codebase I can also natively target Win/Mac/Linux desktops, mobile, and more, without having to mess with Adobe AIR or other virtual machines."
Sooooo..... (Score:2)
Re: (Score:2)
Did netcraft report it? (Score:1)
Because, you know, this is slashdot. We won't believe something is dead until netcraft reports it...
Re: (Score:1, Informative)
I think the verb you're looking for is confirm, not report.
Re: (Score:2)
Because, you know, this is slashdot. We won't believe something is dead until netcraft reports it...
Didn't RFA, summery saying; " Unity is proprietary just like Flash was — 'don't worry, we'll be around forever!"
They all think that way
http://www.cnn.com/WORLD/9709/... [cnn.com]
The Funeral of Princess Diana
Elton John performs "Candle in the Wind"
4 min. VXtreme streaming video
This maybe available with WMP, but I've never allowed that program to run (many reasons).
But I'm going to say it's dead as a VXtreme search on http://www.netcraft.com/ [netcraft.com] crashes the browser window taking me to about:blank (Opera 12), or just
Open Standards, Not stupid plugins. (Score:5, Interesting)
Flash was one of the few holdouts of the Plugins era of the Netscape vs. IE Browser War. It came out because There wasn't a standard between the two for vector based graphics.
Flash worked in different browsers and across many different OS's so it got well accepted. Then Adobe for the most part didn't let go easily and created more and more stuff to it, to make it rather full featured, killing off Active X and Java Applets for standard web pages.
That said. HTML 5 is not perfect, however it does give us a lot of features that we think we should use flash for, and we really should follow the standards that comes part of the browser then rely on plugins.
Re: (Score:3, Informative)
Re: (Score:3)
Agreed, HTML5 is not perfect, but it is better than addons, and those are oftentimes the items that malware uses to gain control of the Web browser (and thus a foothold of at least a user context, if not full run of a machine.)
Of course, the irony is that you can use Flash Professional to make HTML5 content.
More than vector graphics (Score:5, Insightful)
Flash became dominant because it filled many real needs. Vector graphics is just one. It also brought creation tools so artists could work with it, it brought a scripting environment fast enough to use in a browser. Like you say, it also brought commonality to all the different browsers. This means that Flash brought a lot of features to the masses:
- browser games. These were known as Schockwave or Flash games.
- usable online multimedia. Yes there were video sites, but they became far more usable and reliable with Flash video.
- rich design. As much as we hate them for all their inherent problems (and I do too), the fact is that before HTML+CSS caught up the only way to implement a crazy design was with Flash.
- rich typography. We've only got proper font support very recently. That means the website can define its own font, not simply choose among the handful of Web fonts one could assume were available on the client.
Yes you could do video with native plugins like WMPlayer. Do you remember how terrible that was? Half the videos wouldn't play because of some unknown problem with codecs or such. When FLV came in it was great. Despite its problems, it brought reliability. I don't think YouTube would have become as successful as it is without Flash. Same with audio.
Despite its many problems, Flash brought a rich, standard interface to the web when nobody else could.
Re: (Score:1)
Now all of those features are available without a plugin. Why create a new plugin to implement them?
Exactly, use OpenFl instead , compiled to JavaScri (Score:5, Informative)
Indeed, instead of using a plugin, author it in OpenFL and "compile" it as JavaScript. You get the nice Flash API and can use the Flashdevelop IDE if you want, without needing the Flash plugin.
Re: (Score:2)
Of course not.
Re:More than vector graphics (Score:4, Interesting)
No, I remember how my 233MHz computer could play full-screen video from a web page, with no tearing and my browser never crashing... Something my 2.4GHz P4 couldn't manage using Flash.
Re: (Score:2)
Re: (Score:2)
What other tools did you have for making web content?
Re: (Score:1)
What you're missing here is that this is proof that Linux is winning. Flash had no place to go because of the bolstering marketshare that Linux is taking over. It's known that Linux makes up an easy 20% of all machines on the internet today with as many Linux downloads as there are from primary and mirror sites, as well as BT downloads.
I know the Windoze and AppleSux boys will tell you differently but Linux is well established in the mainstream. The proof is in the numbers.
Re:Open Standards, Not stupid plugins. (Score:4, Insightful)
HTML 5 is not perfect, however it does give us a lot of features that we think we should use flash for, and we really should follow the standards that comes part of the browser then rely on plugins.
HTML 5 is ideal but one of my problems with using pure HTML and JavaScript for certain tasks is that implementation can vary wildly and performance even more so. Browser A might implement only a part of the standard, Browser B might implement the entire standard and Browser C has no support and worse is when all of them fully support the standard but Browser A is super slow compared to Browser B and Browser C is basically unusable. I've also seen a few JavaScript intensive websites demand you use only Chrome and I think this is a symptom of these problems.
As bad as proprietary plugins are at least it'll always have a consistent implementation across browsers and perform, in the case of Flash, equally bad across all the browsers.
Its not that I don't support the idea of cross-platform and cross-browser HTML5 solutions for tasks previously only accomplished through Flash but I think people often fail to understand it isn't all unicorns and rainbows as its made out to be.
Re:Open Standards, Not stupid plugins. (Score:4, Insightful)
It also works the other way around. If people don't use the browser features, browser manufactures won't work on improving them.
Re: (Score:2)
Re: (Score:2)
Browser vendors need to know how developers use features to know what direction they need to go in. Or what next to standardize.
Re: (Score:3)
HTML 5 is ideal but one of my problems with using pure HTML and JavaScript for certain tasks is that implementation can vary wildly and performance even more so. Browser A might implement only a part of the standard, Browser B might implement the entire standard and Browser C has no support and worse is when all of them fully support the standard but Browser A is super slow compared to Browser B and Browser C is basically unusable.
I guess that's the price you pay for deciding to ride the bleeding edge. When HTML5 reaches the Recommendation status [w3.org] perhaps the browser developers will concentrate on supporting it (the standard) rather than speculating on which of their proposed implementations will give "the bigger market share"/"scratch their biggest itch". Until then there will continue to be a lot dog-waving by the tails.
Oh wait... HTML 4 was a different dog, same leg action - but good developers worked with the differences.
Bleeding
Re: (Score:2)
Its not that I don't support the idea of cross-platform and cross-browser HTML5 solutions for tasks previously only accomplished through Flash but I think people often fail to understand it isn't all unicorns and rainbows as its made out to be.
Who writes code and thinks a new standard is going to have unicorns and rainbows? Wait, ok, idiots that don't write code and use WYSIWYG tools. Well, when you set an expectation bar too high or are looking up from the bottom of the pool ...
Re: (Score:1)
Don't forget: Flash is used for far more than just web-based bullshit. Animation studios will continue to use to produce things like Foster's Home for Imaginary Friends, My Little Pony, and Teen Titans Go! because it's so much cheaper/faster than other methods. As long as you're looking at 2D, Flash can do almost everything you can get out of traditional methods and you can throw your renders into PS/AI for tweaking if you need to touch up a frame.
http://en.wikipedia.org/wiki/List_of_Flash_animated_televisi
Re: (Score:3)
Actually, Adobe offered to opensource ActionScript (Flash's language) to be adopted as the update to JavaScript, but some stupid argument about... XML parsing(?) lead to some holy war where the ECMA-scripts parted. Which is too bad. Because ActionScript supports object oriented code.
Re: (Score:2)
Which is too bad. Because ActionScript supports object oriented code.
Java supports object oriented code. It's still a bit icky if you ask me. Not as icky as Flash, mind you. Nothing makes a browser go boom like Flash, but Java comes close.
Re: (Score:2)
Do you mean Java, or JavaScript. One is an cross-platform language with strong C++ style syntax, the other looks like someone looked at VB and said "programming shouldn't have to be this complex." The latter is an admirable goal for small things (batch file replacements) but doesn't scale well if you want to do complex things.
Re: (Score:2)
Re: (Score:2)
Flash was one of the few holdouts of the Plugins era of the Netscape vs. IE Browser War. It came out because There wasn't a standard between the two for vector based graphics.
Bzzzt! Wrong. I was a BETA and ALPHA tester for Macromind/Macromedia when Flash was being developed. It was developed specifically to replace their Director product as it was doomed being a primarily raster graphics animation and multimedia authoring tool. To claim Flash started as anything but shows you weren't there. When Flash began the Internet was still really slow. I think the university had three T-1 lines at the time for the whole campus to use. Flash could create animated interactions (all the rage
Security? (Score:1)
How is openflash supposed to more secure than adobe flash?
How do we know this isn't an NSA front organization?
Re: (Score:1)
Re: (Score:3)
How do we know this isn't an NSA front organization?
Maybe it's time for yet another reminder that the entire Internet can be viewed as a "front" for the US military, via (D)ARPA, the 100% military-funded organization that paid for almost all of the Internet's early development. (Yes, a bit of money did come from independent sources, mostly in academia, but this was < 1% of the funding until around 1985 or so.)
What makes this irrelevant is that the Internet's standards and almost all of its low-level code have long been open-source, and easily availabl
Oh happy day (Score:3, Funny)
How can we make sure it doesn't come back from the dead. Zombie Flash.
Take off and nuke Adobe headquarters from orbit... It's the only way to be sure.
QML or HTML5 (Score:3)
It looks like if you don't want to deal with Flash, you have basically two options: Qt's QML for non-web-pages or HTML for web-pages.
Soon though, thanks to QMLWeb [kde.org], you'll be able to use QML-to-JS in the browser.
Re: (Score:1)
Re: (Score:1)
To Clarify (Score:5, Informative)
Re:To Clarify (Score:5, Funny)
Re: (Score:2)
Doesn't he know this is Slasthdot? Facts are neither required nor requested!
Re: (Score:2)
Re: (Score:3, Informative)
Re: (Score:3)
Re: (Score:1)
Re: (Score:2)
Re: (Score:1)
Re: (Score:2)
As a cushion then, while one comes up to speed on something else. Sounds fair enough.
Why write HTML5, Java (Android), native Windows/OS X/Linux versions directly when you can utilise your existing Flash knowledge (which admittedly I have very little so it's nor really for me) to write in OpenFL and multi-target?
Re: (Score:2)
OK, so they rely on a spin off project on it's own, and the rest of the world goes on with HTML5 which will continue to be improved and expanded. Which one will provide more use in the long run? So, OpenFL, is a way to avoid learning new technology. Hopefully it doesn't lead people down a one way street.
One way to a known dead end. So, yeah, face palm city.
Re: (Score:2)
I didn't see it on their site, but is there a list of features from Flash that they do or don't support? It seems that some things, like cross-domain requests, wouldn't be possible if they went from Flash to Javascript/HTML5.
Re: (Score:1)
Re: (Score:2)
A "list of gaps we need to fill" would definitely a good feature to add to the OpenFL site, though.
'tis called gap analysis (between an as-is and the desired to-be state) and enterprise architects use tools for that. A Free (GPL) tool can be found here [enterprise...ecture.org]. The downside is that this takes a shitload of time.
Re: (Score:1)
Route away from Adobe AIR (Score:2)
OpenFL is a code library written in Haxe. You use OpenFL, and then you can output a truly native (C++) app, but can still use the flash API. It doesn't embed the flash player, or Adobe AIR, or anything like that, in your generated C++ app.
So is this a possible migration path for those who were using Adobe AIR? If it's C++, could it tie in with Apple's ObjectiveC framework and thus create deployable apps in the Mac App Store?
Re: (Score:1)
Re: (Score:1)
Re: (Score:1)
Thanks, that was helpful.
I thought it was Apple's fault (Score:2, Funny)
Apple's footprints were found at the crime scene.
No Flash, no regrets (Score:1)
Flash was bad from the start and html5 and what not is just an extension of the same bad idea imo.. It is literally flash(sparkly) at the expense of function and another avenue for security exploits.
Youtube? I use a downloader app, keep local copies of anything remotely interesting.
Since ebay started using html5ucked, it takes many times longer to view the same content. All that impage overlapping crap. Before, you'd middle-click an item, middle click image after image and all are loaded for quick detaile
Re: (Score:3)
Well, well. (Score:2)
Just like before when I saw Macromedia let Flash kill Director and Shockwave.
Damn shame. It was such an awesome product.
FYI, Director's Lingo looks a whole lot like today's Lua.
Cheers to those of us who helped make it and those of us who took it and used it to start a great career.
I miss Director.
Re: (Score:2)
Mobile (Score:2)
An open flash clone might be ok because it does not matter that it will not run on the devices most of the world are going to be using in the near future. These app can be legacy, like the stuff that requires IE. But it is just like Java which has fallen 25%. People will figure out how to make HTM
Re: (Score:2)
Re: (Score:1)
- "Thou shalt not read The Fine Article!"
Alas, I bow my head and obey.
Re: (Score:2)
- "Thou shalt not read The Fine Article!"
Alas, I bow my head and obey.
I read the article once, the bastard then turned around and burned my house to the ground, held my family as hostages and blew up the nearest power station.
Re: (Score:2)
Stage3D? (Score:3)
Can OpenFL handle something like Stage3D and wrappers like Starling?
I've used Haxe in the past, but found it lacking in support of things like sound and sprite animation for writing mobile games.
Re: (Score:2)
Re: (Score:1)
I'm not so sure about it being in death throes yet (Score:3)
Let Flash die (Score:2)
Re: (Score:2)
Yeah, let HTML5 move forward.
My internet connection has moved from 7kb/s to 1000kb/s, and sites still load as slowly as in the 90s.This is obviously the way to go. And that's with ads blocked via HOSTS and google's javascript libraries blocked when possible.
How about teaching several webdevs how to optimize code instead of copypasting it from stack overflow? When a regular site is as heavy as a flash site of the 00s, several people are doing it wrong.
It's funny. I can download videos and shows faster, my on
Just accept our HTML5 overlords (Score:1)
It will be better for everyone concerned if you do, citizen.
WTHolyF timothy? (Score:1)
Title: "Flash is dead"
Summary: "Flash is dying"
TFA: "Flash is getting hard to deal with compared to other approaches"
Re: (Score:1)
Re:Native Targets? (Score:4, Insightful)
So what? Perl can compile to C too, by bundling the interpreter into your target binary. Windows apps can compile "to native" as well. Neither makes it exactly native, similarly to having your app interpreted by a native HTML5 engine is.
The most native way something can be for a platform is to be written directly for its platform, bound directly to its APIs. Anything but that gets very conceptually fuzzy. And if you're worried about this for performance reasons, you should look at the Quakelikes that have been ported to HTML5.
Re: (Score:3)
(I missed part of a sentence in there ; windows apps can compile "to native" as well using WINE)
Re: (Score:2)
Re: (Score:3)
My point is that with modern VMs and JITs and partial nativisation and other systems/PL technologies, you no longer should care whether something "runs native", and that that's a distinction that is so blurred anyhow that it barely makes sense to talk about it. It may have once been important and simple, but nowadays it is neither.
Re:Native Targets? (Score:5, Informative)
Native vs. interpreted vs. JITed discussion is a moot. (They are all fast enough. On one side. On the other side, many code generators/translators add enough cruft for the code to often lose performance compared to the JITed/interpreted execution.)
The problem is with the libraries required by the run-time. One can compile Java application into a native app (using GCJ), but it is of little use since you still need the Java run-time. IOW, you are still poised to run into run-time deployment issues (version conflicts, local configuration, paths, etc).
Compilation to native code has value only if it allows you to create an application which doesn't have external dependencies or the external dependencies are very easy to manage.
Re: (Score:2)
And they keep saying Android apps are native too.
It's all hilarious.
Re: (Score:2)
The embedded environment in which we've deployed haxe over Flash would like to have a word with you about whether or not "JITed code is good enough" ...
Admittedly, my company does not represent the average Haxe development environment; Haxe is very much targeted towards small scale developers working on mobile apps.
But my point is that Native vs. interpreted vs. JITed is not moot in all circumstances, and can be quite relevant depending upon the context.
And for what it's worth, Haxe generated native binarie
Re:Native Targets? (Score:5, Informative)
If I'm not mistaken Haxe "compiles to C++" by interpreting the code into actual C++ source, which then gets compiled into a native binary with a standard C++ compiler.
Re: (Score:1)
Re:Native Targets? (Score:4, Interesting)
Since you're a big HaxeFlixel guy, can you point me in the right direction to actually getting a working dev environment going on Windows? I tried a couple of times, but gave up because even the example projects would throw incomprehensible error messages when I test compiled. Only information I've been able to find on the errors was other people having the same problem, but no actual solutions.
Re: (Score:3)
Re: (Score:2)
It cannot skip the native C++ step. The cpp target of haxe always generates C++ code and always compiles it to produce a native binary.
Re: (Score:2)
Re: (Score:1, Insightful)
That's two terrible ideas at the same time.
Flash developers don't need lifeboats, they need torpedoes.
Re: Native Targets? (Score:1)
Stupid comment. Do you have any idea how many excellent, critically acclaimed games have been made in Flash, or else started their lives there? It's an engine; it can be used for great things or terrible things. It just depends on the skill of the developer.
Re: (Score:3)
The Binding of Isaac disagrees.
Great game!
Re: (Score:1)
To be honest... Random Websites can't have a worse track record than Adobe.
Re: (Score:3)
Re: (Score:2)
And I'd be interested in letting random websites execute arbitrary C++ code on my machine why exactly???
You wouldn't, but then that's not what OpenFL is doing so that isn't really relevant.
The whole notion of Flash is terrible -- no, I do not trust you or your advertisers to run code on my machine.
You don't trust who? Anybody? Ultimately how are you even going to know whether an application used OpenFL? The result that you run is just a native program like any other.
No I do not think it makes your site any better, it makes it shittier and I won't use it.
Website? What are you talking about? This isn't a Flash plugin, it has nothing to do with websites.
It's that simple. And to date I've yet to find a single compelling reason of why I'd use Flash in the first place. And, for the same reason, this OpenFL is equally something I'm not interested in.
No, because OpenFL isn't Flash, it isn't a replacement for Flash and it isn't a plugin.
Re:Native Targets? (Score:5, Interesting)
Flash is no more native than HTML5. At this point it doesn't make sense to "place bets" on Flash at all, unless like the article author you've spent many years on Flash and are not interested in change.
Flash can create a 'native' PC or OS X app (OK, it consists of a standalone Flash player bundled with your flash App, but the practical upshot is the same unless some strange permutation of misconceptions has led you to expect 'bare metal' efficiency from something like Flash).
Flash was actually a great system if you wanted something to write relatively small, animated, resolution-independent applets that can be embedded on web pages and downloaded as pseudo-native PC/Mac apps (Java was obviously better at coping with substantial projects - but its been getting a bigger and bigger pain for non-techie end users to install). Of course, it got abused as a way to add gratuitous animation to websites, and its only merit as a video player was that it was less annoying than RealPlayer...
The real killer, though, is that it doesn't run on tablets... however, when it was briefly available on Android I tried some existing Flash stuff and it quickly turned out that Jobs was right - apart from the bloat and security nightmare, lots of existing Flash stuff just broke on a touch screen.
Re: (Score:2)
So, whats wrong with bundling a lightweight html 5 browser (or even a full blown one) with your HTML 5 webapp so it becomes a 'native' app?
Nothing much - apart from lack of simple (both for the developer and the end-user perspective) tools to do the job and some problems with security features in browsers (e.g. they won't recognise 'file://some/local/dir as a 'domain' when checking for cross-domain scripting and either just plain don't work or pop up scary security warnings). Actually, Adobe Air sorta did that, except that Adobe knobbled any of the webkit functionality that might have competed with Flash...
I still don't get what the OP's requirement with 'Native' that is a show stopper... with SVG and canvas, and even WEBGL, web RTC, etc. they pretty much have all the functionality and more that Flash can provide.
To duplicate Flash functionality in
Re: (Score:1)
It's really not.
Re: (Score:1)
Re: (Score:2)
HTML5 is dead, Long Live ________! Hard to keep up.
________ is dead, Long Live ........! (It's clearly more compact, and its components don't run together confusingly like those _s do.)
Re: (Score:2)
Re: (Score:2)
I remember when COBOL could make similarly important-sounding claims. Didn't change the fact that COBOL blows goats.
Re: (Score:2)