We built the FarmVille-engine using AS3 and I still think it's one of the best programming languages I've ever used. Static typing, access modifiers, and performant. Low friction for new users (most people had the plugin, we could stream the main binary and assets)
0% chance we could have built the game using any other client-side tech stack available at the time.
Well, I used AS3 and Flex while it occupied a useful niche and at the time it was SO much better than the web platform.
BUT, AS3 was not a great language. The VM was pretty slow (that GC! I'm sure you game devs optimized the hell out of it with object pools and all, but still, modern JS VMs could run circles around Flash's), the static typing was extremely limited: you could only type "Function", not the actual arg and return value types; type inference was non existant, Vector was invariant, etc. Let's face it, Adobe wasn't the best at language design.
Typescript is today so much better than AS3 ever was.
When Typescript came, I was like. Yay! Someone made JS become AS3 like. That's when I seriously got into javascript. Flash could do some amazing things back in the day, They had GPU accelerated graphics, microphone, image manipulation, video, and a whole host of other things that HTML didn't have. I think Flash inspired browsers to do better.
You should look at C# in .NET core as well. C# was designed by the same guy as Typescript and Delphi, the famous language designer Anders Hejlsberg.
His languages are the most logical and elegant I have used, all truly pleasant to work with. Building a decent language that compiles down so cleanly to Javascript is a minor miracle.
I tried TypeScript yesterday and while I really love the language, the tooling was wayyyy too complicated and confusing. All I wanted was to make a dead simple hello-world node app that let me write it in VS Code, and recompile the TS to JS every time I saved. Suddenly I had to learn about tsconfig.json, had to install nodemon and have a process running in the background that I'm sure to forget to kill later, and I have no idea how either tsc or ts-node plays into any of this... in the end I just decided to go with ES2016 and be done with it. Too bad, because I really like having type information available, especially for catching bugs. I enabled VS's "pretend JS is TS" setting so it catches some errors, but it's pretty hacky and not thorough, and I don't get to specify types in my program. Really wish I could get a dead simple TS app figured out.
Hey this is pretty great, thanks! Dunno why I didn't consider it to be that simple. But it really is working. Well, along with `npm install @types/node --save` which I found somewhere else, so it quits complaining about 'require' not being found.
Glad it worked! I think it's a failure by the TypeScript team to not make this flow more front and center.
You are right, I forgot about installing typings. Instead of require you should use ES6 "import" (which TS compiles to require anyway) to get more type checking. But when you do that you'll see more of my missed step, which is `npm install @types/XYZ` for each XYZ package you use.
As soon as you start introducing a separate build tool (like gulp or whatever) things get super messy super fast but not for any interesting reason. Using `tsc --watch` also means it does caching across builds so it's faster than using gulp unless you're careful to configure it.
This advice is gold, thanks. But what I'm finding is that it's too painful to create a TypeScript project that has both a front-end and a back-end by incrementally building it like this, unless the front-end is just a set of static files with no compilation steps.
On that note, I wonder if we'll ever see type="text/typescript" in the browser due to how much traction it's gaining so quickly, and considering it's basically always ESNext but with types.
To say nothing of their ridiculous security sandbox design... I remember trying to make banner ads with dynamic price data and between all the various detached hosting abstractions and ActionScript's security requirements (in a time before this kind of setup was common) it was a hell of a project.
I'm glad that someone else said that. I really hated AS3 as a language and was really happy that the ECMAScript spec didn't take their ideas. Typescript does everything that AS3 could do, but does it in a way that is much more friendly to the JavaScript way.
I just have to throw in my 2 cents here. Actionscript outclasses any other language I've used for building custom UI components or just plain experimentation (I'm looking at you in particular, C#). My favorite experience with the language - building a dynamic GIS mapping engine using item renderers. It pains me to no end to watch this designer-friendly* language fade away into oblivion. Thanks Adobe.
*at least for me
Loved AS3. We managed to make lots of great work with it that didn't hog the CPU and performed beautifully. But the Flash runtime was the big problem. I'd love to have AS3 now as a language of useful programming. Still, big ups to everyone who worked on Flash, past and present. Thanks, y'all.
You're welcome! (though I only worked on a small part of it - vector/SIMD instruction support, for gaming usecases)
I think a lot of the stuff that screwed the language was that it was initially supposed to be "an evolution of javascript" (ecmascript 4? I forget), so it took a on lot of the undesirable features of JavaScript, it was never a complete break from it.
Also, Adobe made a big-ish mistake in that it didn't keep the runtime separated from the VM - a lot of the VM abstractions (like pointer tagging) leaked into the runtime, and this is why a lot of things were harder to optimize in the VM than they should've been. Fortunately, the browser vendors didn't have this problem, that's why their GC could "run circles around Flash".
Hey, hello! I know there were features that AS3 couldn't access, but other languages like Haxe could. Would you be able to elaborate more on the VM/runtime issues?
Well, see e.g. https://blog.semantiscope.com/2009/10/29/getting-pointers-fr... ; the Flash runtime relied in various places on how pointers are represented for various "smart tricks"/optimizations. While this may have had the local effect of being faster, it also had the side effect of making global optimizations in the VM harder, since the VM was limited in the ways it could change. With the flash runtime codebase being pretty large, and the team being fairly paranoid about backwards compatibility ("you don't want to be the one who breaks the internet!"), this slowed down change quite a bit. Sure, it was easy to add new features - but it was pretty hard to improve how the old ones were working.
Hot damn, an actual Farmville developer. My big plan fresh out of college was to make a Farmville-esque game with some action elements. Got WAY further along than I rightly should have, and I have AS3 to thank for that.
It's a shame it's going away. Glad the pros from that time feel the same way I do about it.
I can no longer play Factorio. It is completely impossible for me to play without getting sucked in and wasting hours.
The worst part is that I feel productive while playing it. It's so close to the satisfaction I get from actually building something that it's just too dangerous for me to play these days :)
The peak satisfaction: eventually converting your base to 20+k logistic bot storms operating the entirety of your base and cranking out 10k+ blue circuits an hour.
Peaker satistfaction: Using mods to up the complexity and difficulty, and using all of AAI + all of Bob's + all of Angel's. New ores, vastly more complex refining, and you don't start with shit (literally makes like 2-3 hours to catch up to where you normally start tech wise on vanilla).
I used to working with AS3 and was always confused about the amount of hate that was thrown it's way. I found most things about the development flow very nice and it was a brilliant abstraction that HTML and JS just didn't provide.
I was involved in developing a really simple video editor in the browser that would have been impossible (or at least incredibly difficult) to accomplish without AS3 and the graphical abilities that it allowed.
But... it really did used to suck power from laptop batteries like nothing else.
I'll miss you flash. Thanks for shaping what we do and use now.
It was good for the time. So were java applets... but, as they say, to everything there is a season, and the sun is season is changing in the web media space..
It's really not comparable. Flash + AS was a RAD environment, many a game developer got their start (and even built full-fledged games[0]) through it. I'd argue that its biggest contributions were not web-bound[1], and I don't know of any other environment which is both as easy to get started with and as flexible.
[0] it's famously the primary expressive environment of Edmund McMillen: Gish, Aether and Binding of Isaac are all Flash though the later got rewritten natively in Rebirth, Super Meat Boy is the native successor to the Flash Meat Boy, The End is Nigh may well be his first game which did not start in Flash (and even that's unclear as it grew from a 2-weeks game jam)
[1] except insofar as they were being embedded/distributed through it e.g. newsgrounds or armorgames
I like Haxe but had my qualms with it too. To be honest, I would have to try again, but last I tried I remember at least having some issues with the type system, and the module system was OK but I definitely miss my ES modules.
TypeScript is typechecked only at translation time, as is reasonable for any language you would compile to JS. (I guess Elm breaks this mold, but at some great costs.) A side-effect is that you don't have any type information at runtime, for example.
This isn't as bad as it sounds in practice. I'm usually glad it eliminates reflection which I've rarely seen used honorably... I do miss it occasionally.
Some popular typed languages, notably Java, do type erasure on objects as well. Extending that to value types feels right in a strange way, more consistent at least.
One thing I'll mention to make The a better experience... The compiler, even on the strictest options, will still let you do a lot of hacky old school JS crap. I HIGHLY recommend integrating TSLint with almost all rules turned on and Microsoft's contrib extension. It makes Typescript code almost bulletproof.
Use the Typescript language service and experimental plugin for VSCode to show both Typescript errors and TsLint errors live with intellisense. It's a pain to set all this up at first but the experience is slick.
More or less yeah. But I worry it will take a pretty big change in direction before we can get something as crazy as types in the browser. To be fair, I would have never guessed browsers would be able to implement the current standards to the degree that they have.
It's probably worth remembering that AS3 was essentially based on the draft (later abandoned) ES4; there's still a vague agreement that most of those features should come back.
Yes back than even AS2 was good. But now you have a lot of great tools available for HTML5 and Unity. You can build anything you would have in Flash.
I wouldn't say AS3 is the best programming language, but that's just my point of view. I, for one, don't have a favorite language because i think that each language has it's pros and cons and each language excels in a certain area.
It may be ok for developers but the Flash scene was full of non-developers who used mostly the visual Flash editor and copy-pasted some scripts if necessary.
> 0% chance we could have built the game using any other client-side tech stack available at the time.
Would that have been a major loss for humanity as a whole ?
Farmville improved the life of how many people ? how many hours wasted, people made miserable and money lifted from cash cows ?
AS3 was like learning Java, but with the lifecycle gotchas of JavaScript. Ten years ago it offered everything that JS did, except it required static compilation. The development speed of JS+CSS was vastly better than with pure AS.
I say this every time someone brings up Flash's failure, but ... It's a tragic failure on Adobe's part. The tools for 2D animations and games in Flash are far beyond anything else out there from a creative standpoint. There isn't a product on the market that comes even close. Everything now is too technical, too specialized.
There are lots and lots of artists and developers out there who learned Flash's toolset and got good at it -- and now all that knowledge is useless. And there aren't even better tools to replace it.
It could have been different. Too bad they let it fail.
So hi, I made a living doing Flash animation and development around 2000-2007. I don't do it any more, I draw comics now, but I still keep the Flash editor installed just in case I need to scratch the itch to make something move.
The SWF format, and the plugin that plays it, is going away.
The program that started life as FutureSplash Animator, and became Macromedia Flash, then Adobe Flash, is not going away. It got rebranded as Adobe Animate last year.
Animators working on stuff for Youtube or TV probably haven't touched a .SWF in years. You export a .MOV and post that to Youtube. Or you drop it in a video editor along with the .MOVs of all your other scenes for this project. The Los Angeles TV animation industry still uses Flash for some projects; check out https://en.wikipedia.org/wiki/List_of_Flash_animated_televis... sometime, you'll probably recognize a few shows you or your friends love.
If you're using it to make interactive content? You can export to HTML5 now. And to WebGL and WebAssembly. I haven't ever done that myself, I dunno how much hassle it is to convert an old Actionscript/.SWF project to those platforms. I would assume that the 'Animate' rebranding coincided with Adobe feeling that the HTML5 capabilities for interaction were on par with .SWF's; they've been working on that ever since Jobs refused to let the Flash plugin onto iThings.
.SWF is dead, and good riddance. Its plugin was a CPU-hogging binary blob that needed regular updates. It was amazing back in 2000 when it was all we had; it's a lot less amazing now.
The program that compiled a bunch of art and code into .SWF files will live on. The penultimate sentence of Adobe's press release? "...we’ll continue to provide best in class animation and video tools such as Animate CC...". The tool ain't going nowhere. The tool's just distancing itself from its now-much-loathed first export format.
But I would bet money that Animate's file format - the .PSD to its Photoshop - is gonna continue to be called .FLA for the next ten years.
yeah i think people forget (or just don't know) that flash became animate. Most of the "html5" animations we see are made in animate. so in a way, it's all still in the same family and toolset, just the delivery format has changed
that said, i'm really curious as to what's going to happen to actionscript. Starling really ran with that and it's an otherwise really nice language (as3, that is). i'm glad they open sourced it and I hope it still gets developed.
i also hope they keep developing and supporting AIR
AIR support remains and there are always features being added. AIR as a cross platform platform for Win/Mac/iOS/Android is still alive and has quarterly releases. Any missing functionality can be added via extensions written in native code. I've open sourced a few for desktop including a webview. It uses Chromium Embedded Framework (via C#) on Windows and WKWeview on OSX (via Swift) https://github.com/tuarua/WebViewANE/
Others include FFmpeg, libtorrent,toast ports as well as porting of the C extension interface to C# and Swift.
A lot went downhill after Adobe bought Macromedia. Flash use to be light weight, small and incredibly good for displaying vector graphics. You can scale up older Flash content to 1080p and it still looks great. You can't do that with YouTube videos of older flash content.
Many animation studios still use Flash .. to make their YouTube videos.
It ran on three platforms (Mac, Linux, Win) and was a much better portable web app platform than Java applets.
Sure a lot of newer stuff uses cool Javascript frameworks for making games and vector graphics, but there are a lot of old games people won't be able to play anymore. There's a lot we'll lose once Flash goes away forever, in a way that can't be archived like old Geocities pages (unless someone makes a Flash player in Javascript O_o)
I don't know about Linux, but back when Flash was relevant the Mac version always felt like an inefficient crashy dumpster fire to me. I don't have a source to back this up, but I always assumed that was a big part of why Jobs was so uninterested in supporting it on iOS.
Exactly, and the Linux version was similarly bad and unmaintained. I don't think they released a 64-bit x86 version until 2008/2009 when Linux on amd64 had been common since 2005 if not before. I remember having to either keep a 32-bit browser around just for Flash or use (impressive) hacks like nspluginwrapper.
I suspect the crappiness of the Mac/Linux versions was not because of developer incompetence, but a severe lack of developers/resources for those teams.
Hopefully there are some managers at Adobe who realize that, if they hadn't shipped a crappy product for so many years used by every Mac user, they could have made an actual case for their ability to support high-quality Flash on iOS.
The Linux version was really badly maintained for ages.
Circa 2014, I had to do weird stuff like sed on the .so flash plugin to bump artificially its version string from 11 to 12
This was to work around a requirement for VMware VCenter UI which required flash versions newer that
the one available for Firefox at that time (11.2 IIRC).
I hope that at some points, Adobe will release the Flash source code. It's probably not the most beautiful code in the world, but at least, it would provide a reference implementation and help other implementations a lot.
As much as I personally dislike Flash, I have to agree that making it open source would be a net benefit to the world, even if only for preservation of existing media.
Even back then you had to do hacks to get it to work. But after that it became very hard to get anything to work. Eventually someone came out with a service called pipelight that I used to use that would allow you to use windows only plugins in Firefox: https://wiki.archlinux.org/index.php/Pipelight. It worked great until I didn't need it anymore.
>I hope that at some points, Adobe will release the Flash source code.
We can hope but there were big-ish campaigns to get them to open source Freehand and then Fireworks and they just don't care and would rather you keep their monthly CC cheques flowing.
I guess my feeling could be summed up with... if you're going to be on an unpopular system, expect a less-polished experience. When Windows took up 90% of desktop marketshare, and the rest was squabbled over by Mac, Linux, etc., the fact that Flash supported them at all should be seen as a blessing.
Yes and no. It was nice to have support for that whole community of animations and games, even with crappy performance. And we could get to the godawful interactive-restaurant-websites where framerates didn't matter. But the existence of a terrible Mac port helped fuel its adoption as a web technology (versus something like ActiveX where you were Windows/IE only). Without that, maybe those restaurants would have stuck to HTML like they should have to begin with.
Especially on the video side where people stared to pick FLV as a format, we'd have been much better off just getting an MPEG in the QuickTime plugin, probably with better frame rates and definitely not crashing my browser so often.
As a portable web application platform, I suppose it was better than Java and I'm glad to have gotten access to those. But honestly that was a pretty niche use case.
"We also know first hand that Flash is the number one reason Macs crash. We have been working with Adobe to fix these problems, but they have persisted for several years now. "
That's... interesting, and it also smacks of quite a bit of PR to me. If an app causes your OS to crash, and that problem persists for several years, you can no longer blame that squarely on the app. Your OS should not allow an app to crash it. It happens anyways, and that means you have a bug in your OS at best (and possibly an exploit).
All this means is that Apple was unable to figure out how to keep their OS from crashing. Sure, flash was crap, but keeping crap software from crashing your computer is one of the things the OS does.
This was also published not too long after Snow Leopard came out (August 2009), which is when Safari first split plugins out to a separate process, as long as you were running it in 64-bit mode. Before that it could bring down the whole browser, after it would only kill itself and require pages to be reloaded. So it's not like Apple wasn't doing anything about it.
Obviously a positive change in general, but the push to prioritize that and get it done must have been 99% aimed at problems caused by Flash.
And even after that was implemented, an ad crashing flash in one window would still bring down a video player in another, if I'm remembering right. Still a crappy user experience.
That's definitely not what that phrasing means, and I find it hard to believe that it would have been accidentally overlooked in a PR piece like this. To me that means the likely explanations are that either it actually caused Macs to crash (which I seem to recall from experience it could, at least occasionally), or that Jobs is purposefully trying to shift OS instability blame to an application, which I think is possible. Or some combination thereof.
I believe that also applies to most UNIXes and UNIX-likes.
<rambling>
I really like that terminology though, it makes quite a bit of sense. When you witness a crash(you are not part of the crash, you were simply witnessing/interacting with the thing that crashed. You are not necessarily harmed), it is not like the whole world is falling apart. There was a crash, it is horrible and now you have to save what you can. This applies both digitally and in real life. Think crashing a drone or watching a plane crash. You rush to the scene and call for help, but you are not harmed.
Now when the OS fails, it stops everything and can potentially result in significantly more data loss than a standard application crash. Much like when a person is in an accident involving a vehicle. It is no longer just a crash, it is now a panic. When you end up in an accident you don't think "oh ya that crash" you think panic, not the word, the feeling.
</rambling>
Sorry for the rambling on, it kinda just happened. But ya that terminology is great.
If that's so, then the way it was worded seems needlessly unclear. It specifically says it caused Macs to crash. The normal terminology (and proper English) would be to say "cause Mac applications to crash" when referring to the applications and not the OS or hardware. It's like someone saying "Windows crash" is supposed to refer to Windows applications because people say blue screen instead of crash usually. Even if you accept the terminology, it's applied to the wrong subject.
As I said, I can't imagine that distinction having escaped notice in a PR piece such as this.
You need to let this go. You're trying to argue something that everyone understood well at the time. Thousands of news stories followed up on every detail in that letter and it was very clear what Apple meant.
Yes, but he didn't say panic, he said crash. Crash is often used to refer to both application crashes, and os crashes, which are also often called kernel panics. Saying something causes "Macs to crash" when you mean applications running on a Mac, as people are suggesting, is very unclear.
I agree, the wording isn't great. Kernel panic is a specific thing, yes, but there are other system-wide crashes that are much more common on Macs than kernel panics.
"Sleep Wake Failure" comes to mind. When the 2016 MBP was new I'd get one literally every night that I left my computer asleep. It's now much less frequent (a couple a month, still more than it should be), but more often than panics (haven't had one yet).
To clarify, because I think people may be misinterpreting what I meant by that. I wasn't implying a definitive intent to the statement, but stating that the suggested interpretation is not what that statement means in English, as the the subject is a "Mac", which could logically be construed as the OS, the hardware, or both, but not an application running on a Mac. So either it means something other than the suggestions put forth (that he's referring to application crashes), or it's a misstatement, on purpose or not.
They mean application crashes, not the entire OS. And Flash was the reason they rewrote Safari's plugin system to load them in a separate process so as not to crash the entire browser. This was released around the same time as the open letter.
IIRC at the time, Flash lite powered or existed on many more mobile phones than did iOS. Neat stuff to read into the history of. Many of the things in this letter were true, but Apple itself was holding back some things. iOS had it's own battery management issues at this time (even though it was 1-2 generations ahead of Android power management). Cutting to the bone of power management has paid dividends for Apple, the iPhone generally manages power much better than any Android phone I use. The latest Nexus phones from Google started to change that drastically and I hope that continues.
It was bewildering how bad Flash on the Mac was. Simple animations and videos would spin all of my cores up into the high 90s%. I installed a CPU throttling command line tool and would set the flash process to 30% of one core and the animation or video would still play fine, with no noticeable degradation in quality or framerate. I've always wondered whether part of the monetization of Flash was an embedded Bitcoin Miner or other such code to make use of our spare CPU cycles.
Flash has always been crap on the Mac. Always. I was working with it around 2000-05 and the player was always like half as fast as a similarly specced Windows machine. Plus there were some wonderful Mac-only bugs in v5 of the editor that cropped up when you tried to edit files big enough to contain a whole cartoon. And by "wonderful" I mean "I lost a week of my life to editing a cartoon in five minute bursts of work, followed by having to reboot the entire system because Flash had crashed so hard it refused to run until I did that."
Adobe always used to blame OS X for being literally half the performance of the Windows version claiming it wasn't their fault (Mac team was a fraction of the size I heard).
Then Jobs wrote "Thoughts on Flash" and magically a month or so later the Mac version ran a ton better and continued to get better for about a year.
Have little sympathy for such a reactionary approach to user experience when the majority of Flash authoring occurred in ad agencies running Macs.
There's a lot we'll lose once Flash goes away forever, in a way that can't be archived like old Geocities pages (unless someone makes a Flash player in Javascript O_o)
With some work, it can be revived and used to port old content to the web. One of the difficulties with Shumway was being but-for-bug compatible with the Flash player, which turned out to be nearly impossible... If the developer is in the loop, the task is a lot easier.
In this mode, the browsers run remotely and stream the video to your browser. We are still working on the audio support but hope to have audio support soon. It should be possible to archive Flash in this way, though we could use more help/research in this area.
Once the last version of Flash is released, we'll include the latest browsers that can run it.
If the Mozilla Shumway project or similar picks up again (we hope), Webrecorder can integrate that as well to offer a native JS based Flash-recording and replay.
If anyone is interesting in helping out, let us know!
It might be possible to also run Flash in a mini VM. Who knows, maybe someone will figure it out playing flash in WebAssembly in "legacy mode" which disables a vast swath of file and other security issues. Introducing sandboxing could be one angle, but I'm sure someone far more experienced has already thought of this.
I remember Flash under Macromedia... I also started disabling it after I found out that you could access the local file system through some hacks. Actually had to do this for storing state on a project (around 2002 iirc).
I agree that it's great for 2-d animation, one of the best tools around, and why it's still used for education/training. Flex/Flash Builder also wasn't bad at all, and AS3, while verbose was interesting. Having XML as a first class citizen at the time was nice, and paired really well with VB.Net on the server, where XML is also first class.
There are a couple Flash players in JS... I do hope that Adobe opens the format up so a lot of the stuff made in flash can be preserved... the content itself was so much smaller than video files, and the interactions are much harder to setup and match using JS alone. I'm actually a little sad when I see converted flash animations to video (youtube) only because the originals were significantly smaller, without all the noise compared to video.
When Adobe bought Macromedia, my hope at the time was that the output format would evolve into straight, browser runnable JS, vector, movie and audio assets in a zip file with a manifest. So that the actual container format could be built into and supported by browsers directly. Where Adobe could concentrate on the tooling, which is where they made their money anyway.
The funny thing is, I thought Silverlight was FAR closer to what I'd wanted Flash to be, but there was just no way it would take hold, as the tooling was nothing close to Flash.
> A lot went downhill after Adobe bought Macromedia
Still annoyed Fireworks was killed, it was pretty much the feature set of Sketch and more with a decade of work behind it. Then they killed it and are now left scrambling to replicate Sketch not realising they already had it and lost it.
Failure is a bit strong, IMO. Flash played a role, and now it is done.
Meanwhile, it was (as you say) years ahead of standards and the most ubiquitous non-standard standard on the web. In early years it let web designers expirement. Most of those expirements went badly, but many ulitmately preceded and shaped the web of the "future."
Animated interactive UIs, video, audio, rounded corners.... These appeared as flash first and challenged html+ to keep up (with the better parts).
We've all been talking s--t about flash for years. But ultimately it was in use because it was useful and the web may have turned out worse without it.
On tools, this is inevitable. Tools don't last forever and professional these days need to retool periodically. As flash exits left, there is room for new entrants into the 'tools for ex-flash designers' segment.
I guess it played a role in getting html5/css3/web-standards features up to speed
The Adobe Flex thing had lot of css3 features early. Funny to see how 'easy' it is to release specs and implementation when you are the sole owner of the tech
Rounded corners as in on the fly rounded corners, as in vector rounded corners. Flash was first on the web for rounded corners that weren't pre-created bitmaps.
Adobe's marketing team dropped the ball on this one, and now it seems like there's a ton of FUD about what they're doing.
In 2020 the Flash player shouldn't be needed any more, because HTML5 will hopefully be good enough in every browser by that point. All the rest of their tools are still going to be useful.
Why they didn't make this clear to everyone just baffles me.
There are lots and lots of artists and developers out there who learned Flash's toolset and got good at it -- and now all that knowledge is useless.
One can say that about a lot of things. FoxPro made me a good living for probably 6-7 years, and it got me in the door at Microsoft. I would also argue that for creating a data-centric LOB application, there are not better tools to replace it (even to this day). But times changes, technology moves on, yada, yada. Now I do other stuff with other tools. I miss that little smirking fox logo, I miss slapping together a CRUD app in no time at all, but FP had it's shortcomings, too, so I try not to get too nostalgic about how it was better in the old days.
As for Flash, well, I try to stay away from web dev, but I won't miss it taking down my browser on a regular basis. In fact, I miss it so little that I haven't had Flash installed on a machine in years (and promptly rip it right the hell off there if a client's policy sticks it on the machine they hand me).
Not uncommon for these kind of giant step backwards in the world of computing.
I was in a plane the other day sitting next to an elderly gentleman who saw me using Apple products. He then proceeded to tell me how he's been on mac since 1984, and absolutely loved Apple products before, but now he's stuck on OS X 10.6 because it's the last version that supports AppleWorks, a tool he's been using for over 20 years. No currently supported tool gives him the flexibility and power he had with Apple Works - embedding multiple documents of different types (spreadsheet, word processing, etc) within one another, not to mention the thousands of AppleWorks documents he's accumulated over the years. However, most websites and new products don't work on 10.6, so he has another modern computer just for browsing the web. (George R R Martin similarly has an old computer sitting around just to use his favorite 20 year old word processor of choice)
Flash is similar - I have animator friends who maintain an old copy of Windows XP because they love Flash's interface and no other tool comes close.
The news yesterday about MSPaint potentially going away (I think MS back pedaled on it?) falls in the same category - powerful tools that pretty much can't be improved upon that get randomly EoL'd.
Another thing that happens pretty often - tools randomly losing functionality in an update because the developer felt that it should be removed for whatever reason.
Maybe there would be a niche for a minimal Linux distro that comes with a set of powerful, minimalistic creation tools (office documents, multimedia manipulation + viewing, etc - whatever covers the computing needs of 90% of the population) that gets updated with security updates etc but has 1) backwards compatibility and 2) a user interface that mostly never changes as primary goals.
My experience is that the "whatever reason" to remove features is that they're a pain to maintain (often in ways that aren't obvious to the end user) and only a tiny number of people use them. It sucks for the people who do use them (and believe me, I have been in that position myself), but it also sucks to not have new development happen because all of the resources are being consumed maintaining something that 10 people care about.
> tools randomly losing functionality in an update because the developer felt that it should be removed for whatever reason.
More likely a Product Manager, rather than a developer, prioritizing certain "core" features in a rewrite/redesign to align with the product/corporate strategy better.
(Unless you meant "developer" in the very generic sense, or an indie developer.)
main reason why products are discontinued usually is that it's not worth for company to maintain old product if user base is small or decreasing and product is not profitable anymore. Even if company is not actively developing new features in that software, still it requires maintenance - fixing bugs, updating libraries to keep it working with new OSes and so on, and it has a huge cost, assuming that there are big teams dedicated to products.
Also sometimes vision changes for whole company and existing products does not fit that vision anymore and company decides to kill it.
Regarding "never changing" software idea: it inherently is doomed because by default user base will be shrinking - majority of people would move on newer (with better features) software and only handful of users would continue using old "not changing" software. It's jut not worth it, and is too small niche.
You can chalk that up to a market failure. Those products you mentioned all "won" the market and enjoyed monopolistic power. Had the economy allowed for more variety then their EOLs wouldn't be fragmenting.
You need to remember that at the time HTML5 wasn't around so if a developer wanted something more "multimedia" then it meant resorting to Flash. This meant that Flash ads had a lot of annoying traits like audio effect which you wouldn't get with HTML+JPEG/GIF ads.
Plus even back then Flash had a tendency to grind modest hardware to a halt (particularly if you were running OS X or Linux).
So Flash definitely made ads worse. However whether you want to blame Flash or the developers for that is really just a philisophical question. But suffice to say the most annoying adverts around that time wouldn't have been possible without Flash.
I agree with you. Before working with flash I scoffed at it, but after I realized just how good the IDE was/is. Just how good the resulting executable were (without the browser). Everything that HTML5/CSS3 is trying to be, Flash has been for years. Yeah it is closed and buggy, but it filled a gap that pushed the web forward. And having to learn AS3 allowed me to easily get into the newer JS stuff later
You know, it's pretty easy to make a fast, responsive fun car to drive if you ignore all the safety precautions required to make it street legal. As a bonus, when all you have is a steel tubing chassis and no body panels, working on the car and adding new components is really easy. That doesn't mean we should all drive that type of car, or allow them on the public roads.
Flash/Flex had amazing tooling. I still pop open Flash from time to time to make animated gifs. For building custom interfaces, Flex was way better then what iOS and Android currently provide.
I haven't worked with Flex that much but from what I remember their tooling was pretty nice. I think if they had rendered HTML instead of flash applets they could have done something better than whatever a lot of the modern JS frameworks are.
AS3 is one of the best languages I've ever used. Easy to use, dynamic but also statically typed when you want it with many of features from Java and C# which still aren't available in JS.
As others said Adobe is at fault here, same as Microsoft is at fault of not open sourcing Silverlight and now we end up with html5/js mess that was not designed for what is used.
Flex4 is really good and after you learn it you get good GUIs that are efficient and that are easy to reuse and much more efficiient then HHTML based GUIs
IIRC, the format for Silverlight output was well documented, and open. It was a zip file with a manifest, assets and JS. The down side is they didn't get the penetration. Silverlight was FAR closer to what I'd hoped that Flash would have become when Adobe bought Macromedia. Adobe was really pushing SVG before that, and my hope was that flash content would become a zip, with assets and a manifest, where 2D assets were svg, and the tweaning was something similar to CSS.
Either could have been adopted. Would still love to see an HTML "package" format that was similar, where the whole content and assets could be downloaded as a single container, and run offline easily like flash could.
Only Silverlight v1 was Javascript based. From version 2 upwards a small CLR implementation was the runtime. It allowed .net languages (C# and F# mainly) to be run.
Silverlight was not open source though and it was not cross platform either. Having Silverlight/.Net and Flash/Flex/Air open sourced and competing would have been great, as a copmpany I would have made money from the IDEs and tools, why you need to keep it proprietary and then kill it.
Silverlight was available on Mac and Windows, and Moonlight was available on Linux. Again, the plugin itself didn't have to be open-sourced, the format was, which is why Moonlight worked.
In my opinion having Linux support done by community and lagging behind in features and in release scheduling is not cross-platform, Flash had the advantage in this point, Adobe AIR also worked on linux until a point.
Do you think that having this platforms opened source would help or not the adoption? Looking at Java I see it is still going strong with plenty on languages, tools and libraries/frameworks still going strong.
My entire point wasn't that Silverlight was/wasn't open sourced... it was that the underlying structure was FAR closer to what I thought was a good package structure, compared to .SWF
Having Flash on iOS, even through the browser, would have allowed people to develop apps for iOS without going through Apple. It would also allow trivial Android porting. Flash was not in Apple's strategic interests.
It was a risk not supporting Flash in 2007, one that has paid off in Spades. Apple made the right choice for Apple.
In retrospect, Macromedia would have needed to open source Flash, and aim it as a viable open web standard circa 2007 or 2008 (making it even more difficult for Apple to reject). This would have required starting the process in 2003 or 2004 at the latest. But IE6 was still dominant in 2003/2004, Firefox's success was far from assured, and open web standards were a joke.
The original iPhone was amazing in 2007, it was really a game changer for the open web. I don't think Macromedia could have anticipated the reasoning behind the death of Flash in 2003, never mind make the contemporary case to save it...
The real question I have is: Has Adobe ported their Flash dev tools to produce HTML5/JS/CSS? Are they as good the Flash version, and do they provide most of the same features? I ask because that shift has been foreseeable, and should have been a top priority (to minimize the rise of alternative platforms).
Adobe opened some parts like a compiler they were working on and the Flex SDK but Flash was not opened, this was a mistake, I mean they announced a few years ago that HTML is the future so why not put a few people work on Flash code, remove the parts they can't open and make it open source, similar with Open JDK. It is weird they support AIR but Flex was donated to Apache.
I agree, but look at electron apps, the situation is not better, Flash is similar to a game engine so it had a "game loop" running at a certain FPS. I coded AIR apps, and I know Flash was misused in websites but we have same misuse now with JS where sites with text and images don't work without JS, You had the option to turn off Flash but can you afford to turn off JS>
Adobe is at fault, they should have open source it or make improvements/
Don't forget E4X, it's here in AS3 as a first class citizen, while every single browser vendors either did not bother to implement it (google) or deprecated it after some times (mozilla).
It was quite nice to use client-side in Flash and AIR for such things as SOAP etc. but it is also quite powerful when used server-side for web scrapping and HTML templating.
Not sure I agree. If you use some of the good transpiling languages that output JS, the syntax is far better than what AS3 had. In TypeScript/Flow, for example, you get "real" generics syntax while in AS3 you had the magic Vector<> stuff and that's it. And on top of that you have union types, dynamic interfaces, etc.
And thanks to JavaScript VM performance, running the same code is ahead of what the Flash VM could do.
AS3 was way ahead of its time when introduced, but browsers have moved past it since it stopped evolving.
Flex vs frameworks is more of a matter of preference and contextual requirements so I can't comment on that.
I do not disagree, but the comparisons are not fair,first though , I am not advocating of people building new stuff with Flash so I am not trying to convince you to use it in present day.
-comparing a new language TS with the old AS3 is not fair, when AS3 was around TS was not yet here, also AS3 is compiled and in theory games that are well coded in AS3 should be faster
-comparing new js frameworks and libraries that are not built-in to the platform with built in Flash/Flex feature is not fair, we should compare the built-in stuff in the browser vs built-in stuff in Flash/Flex , and if we add frameworks for html/js then there are frameworks that people used for Flash/Flex.
P.S. If I had a choice in what tools to use in a new SPA I would chose today TS and React(or something like react), if you have experience with React are there good components already built, I mean good that are not buggy(dropdowns going offscreen, or if you have more then one component things go crazy), sometime back when I checked there were only basic stuff and wrappers for jQuerry quality ones.
I LOVE VueJS. But you're right- nowhere near as easy as Flex Builder with AS3.
I built an app with Flex Builder that got me my first job. The application is still in heavy use every day, and I've never even once had someone report that something went wrong with it.
I think long term stability is more an indication of your competence as a software engineer than flex builder's stability.
not bashing flash/flex though, my first job was making educational flash games. I wish I could be as productive and have as much fun when working in html and js.
Flex had some good ideas but many things made it a pretty bad experience to work with: Adobe abandoning WYSIWYG editing in Flash Builder, having two ways to do everything (XML and code) made things more confusing than it had to be, and the official components from Adobe generally weren't very good. I much prefer building by own in React.
AS3 was awesome for its time but TypeScript has surpassed it in my opinion.
After building up components directly in the language with React there's no way I could go back to using Flex.
I thought the message on Flash vs Flash Builder was a bit confusing.. but it came down to Flash being more for animation tasks, and Flash Builder more for building crud-like apps. There was overlap, but both targeted differing audiences.
I did find some object model inconsistencies annoying all the same, and some of the security implications in the early 00's frankly scared me. Even though I worked with it, I disabled it.
React + JS is nice, but the animation tooling in Flash itself was second to none. And still better than many options. If I still made a lot of elearning content, I'd be much more upset by the fall of flash.
Do you have WYSIWYG in React?
How much it will take you to implement from scratch in React an AdvancedDataGrid ?
I also like TS and React is my favorite way of rendering SPAs, unfortunately at my work we are stuck with JS,and angular1 so the fact that there may be nice things but are not built-in into html5/js is a huge issue.
Also how can I ask my boss or the other devs to start using X when next year X may be bad or outdated.
I worked extensively with flex, and I think you give it too much credit. Typescript beats AS3, and modern complete frameworks like angular or ember are just as good as flex.
Same. My first programming job was doing Flex stuff (Adobe Air desktop apps in an enterprisy way) and after that I did tons of Edge Animate work (in an environment where things needed to run in IE9 at best). I am glad those helped me to kickstart my career, but modern JS libraries, frameworks and paragdims are so much ahead what we had then I can only wonder if I have truly forgotten something really magnificient.
What JS combination of tools can you use to get similar to Flex, you would have to add a build tool, some JS framework like angular or react+friends then bootstrap or similar to get some basic widgets or pick the widgets you need from the web(ex pick a jQuery advanced calendar widget and wrap it in angular or React , I saw a lot of code that did bad such wrappings that were single use)
TS is a good language that AS3 users would prefer, but it is new, there was Haxe but it does not has a giant behind it.
I am not sure what is a good alternative to Flex, React is the one that seems closer because you have a render function that you can implement and you have the markup but you are still missing a collection of built in, good quality components, I see a lot of projects wrapping in angular or React jQuery components(callendars, color pickers), In Flex you had this components and you could customize them with item renderers and you can extend them with inheritance.
Flash also made distribution very easy: all the code and assets could be bundled in one compressed SWF file. Now we have lots of js files that are minimized and bundled and other loose asset files.
This is the biggest letdown of Flash being discontinued. How can an artist distribute interactives as a single file now? How can a gallery site host user-uploaded interactive animations without allowing its users a platform to inject arbitrary javascript? (At least .swf provides an attempt at sandboxing.)
This seems to have very little to do with "tools for 2D animations and games". For starters, it seems to be a "toolkit" and the first example is a piece of code.
In Flash, you can open up the program and make an animation without knowing any code whatsoever. I can guarantee a site like Newgrounds would never have existed if all those teenage flash animators needed to understand object-oriented programming paradigms first.
I think Haxe (the language) is awesome, but the toolkit as a whole has too many moving pieces.
I tried to do some stuff with OpenFL back in 2014, and sometimes the problem was in the C++ backend, sometimes in OpenFL, sometimes in Lime...
It sounds nice on paper: write in Haxe and the magic will convert it to any target, but when each piece of a build chain that sustains the toolkit is maintained and developed independently (sometimes by a single dev) you really don't have assurances about long term support.
The standard library is also very limited so you end up writing language/target specific code that you can't just recompile for a different language or target without a rewrite.
They should've open sourced it and invested heavily in security, stability and performance.
People blamed Apple back in the day for not including it on iOS but given that how many critical bugs have been found in the time since then you can't blame them.
Someone from Adobe once told me the main reason holding back open sourcing the player was licensing. Apparently the player consists of quite a bit of licensed technology that Adobe obviously couldn't open up, and some of these are so core to the player that refactoring it wouldn't really be feasible or not really worth doing. Rewriting it to not use these technologies or use them in such a way that they could be plugged in with alternatives would be too expensive and for little apparent business gain.
I paraphrase of course and I can't really vouch for the veracity of these claims, but I'm hoping someone with first hand information might be able to corroborate or deny. Sounds plausible to me.
I worked at Adobe in those days and AFAIK this is correct. The Flash player includes a bunch of codecs (mp3, on2, nellymoser, sparc, and I think others), and I believe there's a variety of other licensed code but I don't remember the details.
If they would have open sourced flash player I think we'd be in a much different place today. Not like they'd lose any ground on their actual profit center - the Flash animation tool and development environment, which is still seriously something fairly unique.
Maybe they can still reach that state if they invest serious effort in making their tool able to export HTML5.
I wish they'd just come up with Flash X (sub X for whatever), where the tooling was flash in a flash interface, and geared towards react in a flex-like (flashbuilder) interface. Where the output was a directory with assets that could run directly in a browser/iframe, and svg for vector assets.
A company like Adobe, constantly struggling with accusations of greed and carelessness, should consider this as a PR exercise and budget accordingly.
My guess is that they won't do it because there might be proprietary stuff they don't own, in the codebase. Macromedia wasn't that huge a company, I wouldn't be surprised to learn they embedded 3rd party components here or there. At that point, untangling legals might become very hard.
I wonder how hard would it be to recreate the Flash (application) for HTML5 webgl and JavaScript. I know that there are some converters and so on but from I gather the creator was what made flash easy to use. I see very few HTML5 games out there though. Maybe one of the drivers is that flash games were a single file that could be moved around easily?
Much like Unity today, one of the drivers of Flash popularity was that you could hack something together pretty quickly in a single interface. Throw a bunch of elements onto the "stage", add some scripting, and you're done.
In reality, though, serious applications or games seldom used the Flash IDE other than for designing/managing assets and packaging them (and sometimes not even for that). It was pretty bad in many ways for serious work. I used to create fully animated Flash websites and my work was 100% using FDT (an Eclipse plugin) and the external compiler (Flex SDK). It was way more sustainable.
Stripping the Flash IDE itself (or whatever it's called today) down to the animation essentials and allowing it to export in a number of formats (SVG, GIF, etc) would be the best thing for the app. Not sure it's the direction they're going, however.
Animate CC (the new name for the Flash IDE) can do what you're talking about these days(exporting multiple formats, creating animation texture atlases, etc).
I wrote a CAD viewer app on flash 7.2 / 8 and definitely avoided the flash IDE as much as possible since it wasn't a particularly good IDE. I had just two frames on the stage, one for a loading message, one for the app ui container, with all behavior and ui creation in actionscript files, which I edited with an external editor. I moved up to the flex sdk eventually, completely abandoning the flash ide and not even using the flex ui framework (since it was too bloated). In the end though, the entire CAD viewer (essentially an SVG subset parsing and rendering engine with some ui decorations) was a 91 kb .swf, including the assets (like custom mouse pointers). That was the mixed blessing of flash: amazing abilities locked into a compromised platform.
> The tools ... in Flash are far beyond anything else out there from a creative standpoint.
Very much this. The next-closest tech, HTML5, offers the same multimedia capabilities and runtime ubiquity as Flash— but no native tooling for designers/animators.
Instead, every design and interaction must be funneled from design tool through code, handed off from designer-brain to engineer-brain, across each and every iteration. Productivity and creative expression are a couple of the casualties of this "hand-off" workflow.
> There isn't a product on the market that comes even close.
Have you seen Haiku? https://haiku.ai (I'm on the Haiku team.) We're young but we've got some funding, a functional product, and some big-brand early users. We're going squarely after "modern Flash without the plugin," integrated deeply with modern design/dev tools & workflows.
It's a hard problem we're tackling, and we've still got some work ahead of us—but each of us on the team believes so strongly in the need for a solution (as you outlined here) that we're doing something about it.
Why can't they make Flash better and open like other people did with JavaScript? e.g. emScripten, WebAssembly, and WebGL
I left this question intentionally vague / and possibly wrong in order to give the person responding some leeway and the opportunity to dispel some myths that people might have about JavaScript technologies and the history of both JavaScript and Flash e.g. me.
Yeah, the Flash creation tools will remain in development, simply rebranded as "Animate". The plugin is no longer needed, since Animate can export to HTML/JS/SVG or to video files. This is by far the best outcome: We get to keep the awesome creation tools, but it exports on free/open formats.
You're forgetting that Flash had a lot more than animation at heart. What about the components? They were very useful for both animators and casual developers to easily create interactive animation - which was the whole point. Static animation was only the beginning. The best Flash was interactive.
A huge variety of components from the Flash community. You were presented with an interface within Flash where you could configure the component's options, and very little code was needed to get professional results quickly.
Adobe Animate has nothing like that, and besides Adobe only makes their CC stuff available by subscription which is unappealing to a lot of people.
I don't have any numbers but my impression is the number of people making games in unity dwarfs the number of people who ever made games in flash. it's ridiculously easy now. any coffee shop I visit I see several people in unity.
I hadn't read this. The security and battery life arguments are the best imho. The last part about the apps make Apple look like they only want to protect their financial interests in a sort of sketchy monopolistic way.
The battery argument was weak and I'm sure Jobs knew. Video was a significant chunk of flash's use case, but not the only part, and flash was much more battery efficient than HTML5 at all the other stuff it did. Even today you can't do buttery smooth flash-style animations in javascript without some major hacks (like using webgl). Even simple effects like full-screen fade-in that flash could handle on a pentium can't be done smoothly at all in CSS.
The battery argument was not weak. It was actually one of the strongest arguments. Flash was a battery hog. Disabling flash on a laptop could double your battery life.
Do exactly the same animation with js or even css as you did with flash, and it will use more battery. Disabling flash turned off the animations, so obviously it saved on battery, but the reason for flash being a battery hog was how it was used, not an innate aspect of the technology.
Jobs' proposed alternative to flash, html5, did not solve the battery hogging problem, just made it move over to html5. If anything, it made it worse because you lost the quick fix of disabling flash (or rather click-to-play). That's why even iOS devices have ad blockers now, the mobile web is horrible without them.
Just try it out, especially at the time Job wrote his piece.
Of course your MBP would spin its fan and drain battery when playing a flash game. But it would do the same, and faster, when playing the same game implemented in Javascript, even more so at the time.
That's not actually evidence. I can't "just try it out", because I don't have a collection of flash games with html5 equivalents. And I still don't believe you.
Having my fans go on full blast because of Flash is something I remember happening quite often. Having my fans go on full blast because of html5 is not something I remember at all.
And your use of games here is a red herring. Nobody complained about games using up battery. The complaint was flash ads using up battery.
That's an outdated statistic. There's way too much javascript and unwanted video and other effects on the web today that your battery is still getting hammered. Turn off javascript today and you'll probably get huge battery savings.
Yeah, that last justification is one with which I wholeheartedly disagree. Cross-platform done right is a good thing, and yet here we have Apple explicitly describing how it wants app developers to not use cross-platform technologies and instead rely on Apple-specific interfaces. In other words: "screw developer productivity, if you're not exclusively targeting our platforms, you're doing it wrong".
Is there an example of "cross-platform done right"? I have yet to see a case where an app is able to both exploit the depth of every devices capability and the breadth of multiple hardware and software configurations, without becoming a platform unto itself.
I'm not saying cross-platform isn't possible, but "done right" is a pretty vague target to hit.
Depends on your end goal. But I'd say Tk/Tcl and Qt have done alright for themselves. They'll never be confused for native, but for a solid GUI app, they're quite solid.
I'm a Qt programmer. It's very very good because it attempts to look as much as possible like a native app rather than forcing a "cross-platform look and feel" like Google has been doing lately.
But it still feels wrong on the Mac. Little UI details which just "aren't done" on the Mac. Plus Qt is always a year or two behind on everything means that when MacOS alters or refines a UI element that Qt apps will still be doing things the old way.
The internet used to be less "flat". Every website was interactive, animated, had sound, had dimensions to it. Everything was a theme park. Maybe you had to learn a new UI every time but I was amazed a lot back then.
I learned a lot of programming with Action Script, it wasn't the best, but it was easy to get into.
I did my fair share of games as well, there were so many of them and publishing a game on internet had never been so easy. Orisinal is beautiful (http://www.ferryhalim.com/orisinal/).
Now where do people find such mini games? On mobile. The big mini-game market has shifted and we now have to pay, we now have to download each game individually.
I understand Flash has had a bad track of security vulnerability, but the internet used to be magical, it's the end of an era.
As methodover says it here:
> The tools for 2D animations and games in Flash are far beyond anything else out there from a creative standpoint. There isn't a product on the market that comes even close. Everything now is too technical, too specialized.
> interactive, animated, had sound, had dimensions
Interaction, animation, sound, and dimensions have their place in the web. That place is in a small percentage of websites. Very small. Flash was possibly a better tool for that small percentage of websites (games and something else I guess?).
I, for one, am glad I can read a fucking blog article these days without it being rendered through an animated page flip which makes the shrill sound of paper tearing each time a page is "turned" with no way to mute.
While I agree, a lot of what you said isn't limited to the lack of Flash, but just trends in general. Websites could be more interactive, animated (even with sound, if desired...but please...no), and have some dimension. Unfortunately, everything looks/feels like Bootstrap-themes, because they are.
I personally started off animating in Macromedia Director. I played around with Lingo. I moved to Flash / Actionscript and loved the change. In a similar fashion, I'm totally excited about the future of Animation / Games (and how Canvas plays into that). There have been some huge strides by vendors and developers to improve animation and gaming on the web, and I suspect that will continue before Flash is EoL.
Flash being discontinued makes me sad, but purely in a sentimental way - I'm very excited about what comes next :)
Many people, myself included, bristled and groaned every time some company decided it was important to "wow" me with their Flash animation when I first visited their web page.
And then again when I clicked the "Home" link.
And then again when I revisited it a few days later to remember what their phone number was.
And then again, 6 months later, when I clicked the bookmark I had saved in an effort to remember what it was and why I saved it.
> will be phased out by the end of 2020. At that point, Adobe will stop updating and distributing Flash.
Adobes stance on backwards compatibility in Flash has always been "Don't break the web". Where does this leave all the existing flash content that still exists around the web after 2020? As far as I know, those JS emulators are way to slow for most content.
The saga behind media conglomerates, tech firms, pornography distributors and the W3C is pretty unpleasant, and (suffice to say) it has brought us to where we are today. As fast in-browser decryption hits broader swaths of the world's internet users, we should expect to see more and more sections of the web walled off to unregistered users.
Considering most/all users are accustomed to being required to register and log in to websites to view content, the outrage will be minimal and isolated to enthusiastic commenters like the parent above you.
Let's put this in a familiar context -- remember how Twitter decided to close off its platform to third-party apps? Now most users need either Twitter for Twitter-sanctioned apps.
This similar sequence of events can be replicated over all sources of content of the web with mini-walled gardens popping up.
Don't worry, you will still be able to run SWF files after 2020 using the latest Flash Player Standalone Projector, Swiff Player, iSwiffy, Eltima SWF Player, Gnash, etc.
I don't know anything about the state of JS emulators, but I'd imagine three years of hardware and software advancements will go a long way to making this feasible.
Is there any attempt to save all the classic Flash animations and games like they did with old arcade games? Any "emulators" which can be used to preserve them?
There are a lot of serious attempts underway, I've been involved with some of those discussions.
Nothing perfect and turn key exists at the moment, but all the necessary pieces are basically there.
It depends on what sort of preservation strategy you're going after.
1) "Emulation" style:
-- Open source flash player (a la Shumway)
2) "Automated Conversion" style:
-- Load-time conversion to a different format (ie, HTML5)-- Ahead-of-time conversion to a different format
3) Convert by hand
-- Rewrite in JS/HTML5
-- Rewrite in Haxe using a library like OpenFL (Haxe compiles to JS/HTML5, C++, also Flash)
There's a lot of options available, and a lot of useful primitives. Parsing and rendering Flash (SWF) content is basically solved (OpenFL has made particular strong strides in this area, Shumway is impressive too).
The really big missing piece is ActionScript execution. There are in fact various open source ActionScript VM's out there, and there are ways to parse ABC (Action Script Byte Code) and convert it -- either ahead of time or at load-time -- to something else, whether that's directly to JS, or something like Haxe (which then compiles it to JS or C++ or whatever), but to my knowledge nobody has a working solution that as of today combines Rendering + ActionScript Execution + RigorouslyTestedConvenientUX.
But all the pieces are there. You just need someone motivated enough and well funded enough to put it all together. Hopefully this news spurs that fire.
ActionScript3 (or AVM2) is fairly well documented and Shumway did a fairly good job executing ABC files, I think we got to like 99%+ compatibility on the reference tests. Getting Rendering + Timeline + Library working correctly, ... that's another story. You have to bug-for-bug compatible AND do different things for different versions of SWF and AVM versions. If anyone needs a decent emulation of AVM2 bytecode, Shumway has a pretty good one in there.
and added native implementations to render UI with OpenGL API, QT API, etc.
Now, even if it is technically feasible it is not like providing a plugin for the browsers, so that would be mainly to target desktop GUI apps which Adobe AIR is already doing very well.
As for converting the whole Flash API to HTML5/JS, some parts could be done but many parts would be missing or would be impossible to port because the Browser API can not support some of those, TCP/UDP sockets for example (possible with chrome non-standard API but then does not work everywhere).
I really don't get the downvotes here. Yes, there are umpteen ways to run a Flash program. But if you goal is "preserve the experience of running a Flash program for future generations", the most obvious solution is to simply emulate the platform on which Flash runs. (This solution also has the benefits of being simple and a solved problem, which the GP admits is not true of other solutions.)
Proposing to preserve Flash apps through a bytecode emulator is frankly somewhat absurd if you consider analogies. HTML 2.0 sites don't render on modern browsers either, but no-one seriously proposes maintaining a modern HTML 2.0 browser to view them. They simply run an old copy of Netscape Navigator, in a Windows 95 VM if necessary. Likewise with old BASIC programs on an Apple 2: no-one (from a preservation standpoint) runs them on an AppleSoft BASIC emulator; they run them on real AppleSoft BASIC inside an emulated Apple 2.
I used to work at a company called Spaceport.io (now defunct) where we had a nearly complete implementation. It included an impressive GPU-accelerated renderer and an optimising compiler from AS3 to JavaScript—we could run on mobile, desktop, and even WebGL, and do neat things like update over WiFi instead of USB during development.
It was intended for Flash game development, and worked pretty well for that purpose. Unfortunately, we spent a lot of time dealing with large customers who wanted to use it to port existing Flash games to mobile, which was basically a neverending treadmill of having to implement obscure features that they didn’t even know they were relying on. :/
Parts of it have been open-sourced, but I wish the parent company would just release the whole thing. Last I knew, there was one guy maintaining it for one customer after the main engineers were acquihired.
I see one of the investors was the BBC - so that's where my licence fee goes :)
" neverending treadmill of having to implement obscure features that they didn’t even know they were relying on,"
I been coding emulators for fun (i.e. NES, Scratch) and it's been an interesting journey with all the gotcha's involved - however I don't think I have the motivation for any flash based ones, the only exception I've worked on my scratch2apk emulator (javascript) which has plenty of games going for it!
YouWeb, an incubator. It was shut down in ~2013, but I think still exists to own the IP of the startups. The person to contact would probably be the owner, Peter Relan; I dunno what he’s doing these days.
Arcade emulators emulate the arcade hardware itself, not any bytecode which the arcade games may be written in (such as the TI-99/4's GPL [1]). For preservation purposes, it is likely that Flash is preserved likewise (by emulating the PC platform, rather than Flash bytecode). This is the easiest way to ensure exact reproduction of the original execution.
There was a good attempt (Mozilla Shumway), but Mozilla for some reason dropped it. I guess it was too resource draining, and wasn't their core priority.
I seem to recall there was a way to play .swf files without a browser. It might be cool to see a standalone flash player, maybe a little like the Electron framework.
> Letting flash run outside the browser sandbox, what could go wrong?
It would be like any other desktop application. You're running code of which you presumably know and trust the provenance. It's not like a malware Flash ad written by someone who found a security hole in the Flash player, that is loaded into a random web page by an unsuspecting user.
Exactly! The type of stuff I built with Flex and Adobe Air was so great. I was able to solve so many problems that I just couldn't have (easily) without it. And for that brief moment when I could turn Flex code into iOS/Android apps? Awesome.
Yes, really. Adobe AIR has had supported for iOS and Android, practically since the beginning.
There was a big stink around Jobs "Letters from Flash" and all AIR applications were put on indefinite hold in the app store review queue with no explanation. Adobe stopped development of their iOS stuff. Then after a few months all the apps were approved, Adobe resumed development, and no one had a problem since.
What is FlexDeveloper? Do you mean Flex Builder [now Flash Builder]? It wasn't really killed, just abandoned, if there is a difference.
Adobe abandonment of Flex has to be one of the most perplexing acts of corporate self harm I have witnessed ( and been affected by).
Dominating the Rich Internet Application space and poised to storm corporate apps by levaraging all those Flex Devs via Adobe Air and they... just knife them all in the back and abandon Flex totally.
The Flex concept of variables being "observable" was about 8 years ahead of Backbone and later Angular, and now React-style UI updates from an event loop.
It was surreal working in the Cairngorm Flex framework briefly in 2000s and then see Backbone and Angular pitched as groundbreaking years later. Only now are we getting to a similar level of elegance with loop-style UI updates.
Still haven't had a better development experience than Flex with the CLI compiler.
Built some of the first web based AR engines with it and alchemy. Built giant, 80"+ touchscreen, trade show interactives with it that nobody had a clue were Flash unless you told them. Was able to port just about anything to iPad with Air for Mobile and actually build IPA files on Linux.
All they needed to do was cross compile to HTML5 and barely anyone would be using Angular or Bootstrap nowadays.
> Adobe abandonment of Flex has to be one of the most perplexing acts of corporate self harm I have witnessed ( and been affected by).
Flex is now an Apache open source project. It still has an active developer community, some of whom are Adobe employees, and appear to work on Flex full-time.
Unfortunately, it seems the developer community is focusing most of their efforts on FlexJS, an HTML/JavaScript version of Flex. I could be wrong, but I don't see them making a very big splash in the crowded JS app framework space.
If this had been Adobe's focus rather than chucking it at Apache then Adobe would be world leaders in JavaScript app development and we'd all be using their tools.
As much as I want people to stop using Flash for new projects, I'm worried what this means for preservation. There are a lot of old Flash games and other stuff out there that has never been ported to HTML5 and have been abandoned by their creators. A decade from now, we're probably going to need to run an old OS in a VM just to run this old content.
We're at risk of a digital dark age already, and this is just going to make it worse.
> A decade from now, we're probably going to need to run an old OS in a VM just to run this old content.
What's wrong with that? Because that path is open, I think Flash games have a much better chance of preservation than most SAAS-projects being developed today.
It's actually pretty weird that would stop distributing it, especially since they still distribute a Shockwave Player, and well, Shockwave has been completely dead for long time now.
This is exactly why we shouldn't rely on closed standards and closed viewers: at some point they stop to exist, and there will be content out there that we can't view any longer.
> Specifically, we will stop updating and distributing the Flash Player at the end of 2020 and encourage content creators to migrate any existing Flash content to these new open formats.
Why not open source it and make Flash the open format instead?
People mainly want Flash to die because it's a closed standard/platform that can't be improved by third parties and has lagged behind modern web standards as a result. Opening up Flash would address that problem and make the idea of Flash on a modern website significantly less horrid.
Whatever flash is, it’s the opposite of “lagged behind modern web standards”. If anything that was the one thing it didn’t do in its lifespan since it enabled apps that are only now html5 achieving parity.
It enabled a consistent cross platform interpreter for javascript and xml based apps.
Flash's selling point was compatibility, which is why people put up with the clunky APIs, performance, etc. If you changed very much of that you end up with something which isn't Flash and is on a steep mismatch in resources versus the huge investment going into web technologies. I don't think there are enough places with massive Flash codebases to support anything like the work going on in the web space.
There are a lot of bad things about Flash, but it still has not been adequately replaced. AFAIK there is nothing web-centric that comes close to the developer experience it offered.
Yes, things can be pieced together: animation programs and sprite exporters here, some custom scripting there, throw in your own tween, sound, and networking libraries, etc., but this is much less efficient than a unified write-once, run-anywhere platform with an integrated development environment for all aspects of the content, which is what Flash offered.
That meant that Flash didn't really do any one thing exceptionally well, but it provided a way to reason about the program as a cohesive whole, and from a very visual perspective. I think that opened doors for a lot of people and I think the simplicity made it a productive platform.
I am no Flash fanboy, but there is a reason it was so popular, and we're ignoring that with the HTML 5 platform, which ultimately just leaves an opening for a new Flash imitator (Unity is the leading candidate, though it hasn't really broached web in a major way yet), which means we will repeat this cycle over the next 20 years.
No, I'm aware of that. Animate's HTML 5 export only exports the animations (in a relatively simplistic manner), leaving all of the logic and interactivity in the dust.
That's a big change. It downgrades Flash from an all-in-one development solution to a single piece of the art pipeline. Users are left to their own devices to try to figure out everything else.
Actually Macromedia didnt invent it either. A small company called "FutureSplash" had a software called FutureSplash Animator. Macromedia bought it in the late 90s
That's disingenuous. Adobe didn't invent Flash, they bought the company that did. Adobe's strategy is based on them having resources to acquire, not create.
The only real* browser I can think of that isn't listed there is Opera, and they're only barely hanging on. The numbers I've seen peg them at roughly 1% of desktop browsers, mostly in Europe.
*: That is, one that isn't just a reskin of another browser on the list.
Of course that describes what they are doing now, not their plans. Which is not surprising, because Apple never says anything about plans, as a matter of corporate policy...
Whoops, I totally didn't notice that was missing from the list.
That being said, while Apple hasn't explicitly said they plan to remove Flash from desktop Safari, they've implicitly signalled it -- they've already got features in place which make it often only load on demand.
There's not much to remove. You install Flash on macOS separately and Safari will load that in as a plugin. It seems obvious that Safari will remove that plugin functionality on or before 2020.
Safari never shipped with Flash to begin with, and Apple has regularly published metadata updates, which blacklisted old, insecure versions of flash that the user might have had installed.
New episodes of Homestar Runner are already being distributed as normal videos, e.g., https://www.youtube.com/watch?v=L0nuQ5o2DYU (which is incidentally about the death of Flash)
I disabled flash on my browsers in 2014, and I have had to manually reenable it exactly twice in the last three years to get content I needed. Both times were for restaurant menus, of all things.
I have fond memories of newgrounds and the real early explosion of browser games, but I'm not going to miss the lag, memory overhead, and security hell one iota.
What about Adobe Connect? They have been talking about moving to HTML5 for years, but nothing seems to happen. Then recently they announce that if you don't have Flash you can instead download an executable:
VMware vCenter's Web UI by default runs in Flash, even on the newest vCenter 6.5. There's an option for an HTML5 interface, but it's not feature-complete and is far buggier and laggier than the already buggy Flash client. ESXi 6.5's web interface is HTML5, and it appears to have a lot of common codebase with vCenter's HTML5 interface, but is far more mature and accessible. I hope that this gives VMware the kick in the pants to finally lose the Flash vCenter client and finish up the HTML5 version.
Just a couple of years ago, someone from EMC came to our data storage team and proudly announced their brand new interface, written in Flash. I laughed in his face when he said that.
That's amazing, I haven't used EMC much and didn't realize they used Flash for their interface also.
I (with protest) use Java UIs so much for configuring various networking gear (old Cisco MDS switches still in use, etc) that I have to have three Win7 VMs with different Java versions and settings to make sure I can access them all. At least using Flash for the UI makes it so I can access it on just about any machine with Flash enabled so I don't have to have crazy configs to get things working.
I totally agree. In the past week I deployed a new VMware cluster with vCenter, and found myself constantly wishing for the desktop client. A lot of the issues I had were related to bugs in the web interface itself, I had to SSH in to fix random things. Apparently, certain 'invalid' VM configurations can cause the web interface to error out completely until the VM is disassociated or edited, even on a brand new cluster. For VM stuff I can use Workstation to administrate them so I was able to change the VM settings from there, but for anything above individual VM control you pretty much need the web UI.
Vmware, ADP, and Several Other very large Enterprise Vendors use Flash, Infact some of them just made a transitions from Java to Flash after Java announced the EOL of Web Browser Applets.
Tons of animators still use Flash, the tools are by far the best and easiest for making animated and interactive content. It used to also have an awesome publishing path, but Apple killed that off. All the animators I know still work with it, but record the flash animations as videos and post 'em on youtube.
An awfull lot of UI component in desktop and mobile application seems to be using flash under the hood, and yes that is including games as well, but not just the "farm ville" type (world of tanks is a prime example).
It was a path to programming for a lot of artistic minded kids who enjoy learning things on their own. They could start by slowly adding programming to animations until it became a game they could share with their friends. A lot of these people grew up into development jobs. I think if the barrier to learning was picking up ES6 and React or Unity before being able to make a functional game, a lot of them would not have gotten started.
Flash is one of the best workflows for animators ever. This is equivalent to Photoshop being EOL'd because Apple doesn't like the pictures you can make with it.
I did my first project, when I was 14, with Flash, simple animated cartoon. Was super easy and fun.
Today I read we would have Iron Man style UI if Steve Jobs didn't shot down Flash with the iPhone. The reasoning was, nothing we have today had such easy 2D/3D animation features, yes WebGL can do everything Flash can, but it's waaay more complicated.
When I started programming, I liked the idea of Flex, but somehow that never cached on. Later in 2011, when I finished my CS degree, I moved to JavaScript because it was open and rapidly catching up.
I liked the whole openness of JavaScript much more and like I said, the Web platform can theoretically do everything Flash can, but we need better tools. I can do rather much, because I'm a developer, but when I look at me 18 years ago, I didn't know anything about programming and still got things done with Flash.
I also met a few people who build their whole career on Flash. Some media degrees here were basically 80% Flash content creation and I'm still working with people who got into IT by doing Flash, they miss it pretty much...
I remember in 1993-1994 playing Cosmic Osmo on a Mac. All the old pre-Myst Cyan games (Manhole, Osmo, Spelunx) were basically HyperCard stacks, which didn't directly allow for any but the crudest animation. But Cyan had integrated MacroMind VideoWorks, which later became Macromedia Director, into Osmo. The effect over other HyperCard stacks was striking. You could actually play little minigames in the Osmo world.
Then I went off to college the next year and found out about the whole "web" thing, and again everything was flat and mostly static. Then Macromedia Shockwave and Flash and Java came along, and it was just like Osmo vs. Manhole, only more so. For a long time, your browser install wasn't complete till you had Java, RealPlayer, Shockwave and Flash installed (and later, QuickTime).
(For nostalgia purposes, Steam has all the Cyan games from Manhole on up as a bundle; you can also play the original Manhole/Osmo/Spelunx in the SheepShaver emulator if you can get hold of firmware plus OS and game discs.)
Although it's not clear from just a game being in Flash if it's in Haxe and compiled to Flash or actually in AS, but still. It's so convenient for games.
I know of a very large company that has been over the last couple of years moving from Java to Flash, so it will be amusing to what their reaction will be to this news.
Supposedly upgrading the vSphere web interface to HTML5 is on the roadmap, but I'm not sure when. I'm just happy that they give you an external console app now.
Now that we're down to the last few sites running flash it really drives home what an annoyance they are. I don't run flash on my main browser (I work in security), so I have to keep Chrome handy to log into VMWare, and because even the login page is Flash there's little password manager support.
Then once I'm logged in the non-native styling and controls really drive me up the wall.
It used to be bundled with Chrome somehow so if you really needed it, you had it. Now I just don't use it. If something requires Flash then well, too bad for me.
I can understand why, I feel like the Chrome team has announced 3 or 4 times over the last 5 years that Flash was going away, but the only change was that you had to click to play it, and the other announcements seemed useless.
How hard it is to EOL anything. How non-standard standards can play a giant role. How important deign/dev tools can be. How hard it is to get designers to accept limits (there were all flash websites just for minor design capabilities)..
Yes and no. I agree that standards make things easier, but standards probably make it harder or at least not easier to really come to an EOL for dated technology.
See how browsers still have to support non CSS styling and similar.
What I meant with standards making it harder to EOL technologies is that a standard leads to more implementations, which is a good thing, but certainly not for EOLing a technology.
This is Adobe's fault. They could have open-sourced the player anytime they wanted, they didn't. I don't blame Apple, or Flash-haters or anybody else but Adobe and all its stupid policies. Adobe killed Flash. Nobody else did.
I installed Adobe Animate last week, it looks really similar to flash, they even use very similar concepts. I didn't try to write some code yet, but it looks like they use some kind of an action script.
It's basically Flash, it just exports differently. Same program, different name to avoid confusion with the Flash platform. Basically the only thing that's going away for the typical Animate user is the swf, everything else will remain as Animate exports to html5 and js while using as3.
Here's a recent Kongregate blog post about the topic. HTML5 game uploads have been growing steadily, and there are now more new HTML5 games uploaded than Flash games:
It would be cool to see the Adobe Flash 2D vector graphics engine opensourced, to perform comparisons with similar engine all around: Agg, AmanithVG, Blend2d, Cairo, NanoVg, Skia, ...
I still don't understand why don't adobe open source the flash player, so that security team and browser teams can look into it and maintain a secure runtime.
While Flash Player is meeting it's end, the transferability of existing investments in AS3 to a new endpoint is tough not to imagine due to the kinship of ECMAscript with both JS and AS3.
If AS3 could compile to HTML5/JS endpoints, existing, or archival can in some part live on or be repurposed. The question will be how close it can get compared to existing solutions. There is likely several billions of dollars (likely more) of content that will need to be recreated, and not all of it will, or can be.
With Flash Professional becoming Adobe Animate CC, it wouldn't be surprising if this transferability becomes more of a prominent format. Adobe has been at the core of a lot of rich media formats both online and files with PDF and Flash, and I expect them not to disappear in the world of the tooling to create such experiences.
There is some stewardship and timing on this announcement from Adobe that says the right things to those those who are quietly very excited by WebAssembly, and now have Adobe and others starting to look at it the same way.
I have a bad experience every time I have to declare taxes because the interface was built on top of Flash; many parts of the platform are broken (missing images, inconsistent styling in sub-pages, JavaScript exceptions) and I wonder what the government will do to overcome this change, three years is not much time by government standards.
Flash Player is not Flash. Flash was the name of the media creation software. Flash Player is not end-of-life because it sucks (which it does) but because in the days of HTML 5, CSS 3, ECMAScript 6/7, Canvas, WebGL, etc a plugin to show that sort of media is redundant to the browser.
I would wager flash can still be used to develop movie set UIs, and other internalized use cases. However those can also be utilized outside the realm of web browsers.
It's benefit is a powerful full featured scripting language, in conjunction with a canvas that is easy to achieve pixel accuracy.
Funny how they spruik their Creative Cloud applications in a message about EOL Flash. I'm guessing their marketing managers signed off on the message... "End with a positive note about how awesome we are, and how everyone can subscribe to our products and give us money on a regular basis no matter how infrequently they use the product."
Adobe are so... creepy. I won't miss the pre-ticked "you want McAfee fries with that" box when updating Flash. I wonder how many people didn't see the checkbox and ended up installing McAfee unintentionally.
I still use a browser extension to force Flash player on Youtube simply because it performs better than the HTML player, and provides more flexibility.
Honestly, I need it now. I tried to pull up Scratch for my child, and the "create" link went to a blank page without even an error message. Given that no browsers on my platform still support NSAPI plugins, there is literally no way for my child to use Scratch, and they are the perfect age for it.
That's quite a commitment for a company, to maintain a piece of software for 25-ish years.
I have fond memories of using Macromedia Flash 4 and 5 many years ago to create animations and simple scripted pages. I loved how well integrated everything was.
But I still believe that things are better as they are today: we have more choices in frameworks, better standards, and some great web services which work well on both mobile and desktop.
That being said today I uninstalled the Flash plugin preemptively on my machines just because I am not needing it for any website I commonly use.
This is absolutely awful. There are thousands of great games on ArmorGames and Kongregate that are in Flash. I they consider open sourcing it or at least allowing open source alternatives to grow.
I miss Flash; it was nice to be able to browse the web normally, with Flash disabled, and then to enable it only for a single function on a single page. It was relatively rare, and it didn't destroy the web.
With JavaScript, I basically have to enable it everywhere, as the web has been destroyed and I must now grant practically every site execute permissions on my computer in order to read content.
Does this mean an end of all things related to Flash ecosystem or just Flash itself? I still have Adobe Air apps (as rare as it may seem) that I use regularly. Does anybody know the best way to migrate Adobe Air apps to HTML5? My guess is to use Adobe Animate CC, but it is not free..
It seems like instead of programming for flash player you have to program for each browsers HTML/JS quirks. People trash flash, but these browsers also have security holes. Its hard to make any really complex piece of software completely secure.
Anyone know of any command line tools available out there that can convert Flash assets to PNG assets? I have a large number of Flash assets that I will eventually need to (finally) convert over. Hoping there are some easy tools out there available.
swf is just a generic container like a zip, so there's plenty of tools to actually extract the original resources from there (no "conversion" necessary, that is).
Too bad. Mozzilla will not ask me to update flash player as it is literally gone now. I must there are too much memories with flash player as there was a time when you couldn't play a video on youtube without it. #ripadobeflashplayer
The only people who care about the life of this product are those who invested in buying and learning how to use it. I can understand why they care, but I don't.
I decided not to invest in it back when Macromedia bought it because I knew it would be expensive and subjected me to their whims. I thought "Futuresplash" was great and had high hopes for it but I'd already been burned by Adobe's planned obsolescence and I hated the way Macromedia designed their UIs and thought they charged way too much for their products.
I stopped using Adobe's plug-in on my Mac even before Jobs came out and complained about Flash. I considered it a form "spyware" and even if it wasn't it was constantly pestering me to update it and I seldom ever visited a site that used it. As I recall it was a bit of a pain to get rid of it too.
>The only people who care about the life of this product are those who invested in buying and learning how to use it.
And the ones that have content currently deployed on the platform.
A few of my clients still have sites in Flash that I wrote for them in the early 2000s.
Every year I try to convince them that they need to switch, but they can't justify the cost.
It's funny I got down voted for that comment. I'm not sure why they'd take offense with my opinions above. I didn't say they were wrong, I just whined and complained about why I didn't use it.
And whining and complaining can have merit. For example, you can whine and complain to your landlord about your A/C not working and they may not want to hear it, or pay to fix it, but it won't get fixed until you do.
As things like Flash and Silverlight due i can't help but think that there will be another one of these in-browser techs that is just bound to come back around. What's new is old and what's old is new :D
Of course not. It was planed originally in 2012 to happen in 2015. HTML5 is STILL not ready. And it STILL won't be in 2025. All you haters can downvote me to oblivion new for saying THE TRUTH (drops mic)
>Adobe also notes that it plans to be more aggressive about ending support for Flash “in certain
geographies where unlicensed and outdated versions of Flash Player are being distributed.”
Why would China be interested in distributing out of date versions of Flash? And how would Adobe more aggressively ending life for these regions affect them if they're already out of date and unlicensed anyway?
Flash ads were terrible, a blight on the web. But Flex is so much more structured than any JS framework I've used. It wasn't super pretty but it did the job.
Interesting, that it will still survive in browsers till 2020.
Co-incidentally, today at A+E Networks, we finally migrated all our web properties to HTML5 video playback.
If the product is dead, that means the licencors are likely to no longer make any money off it it. This means they will likely be open to open sourcing the code for free or next to free.
Open sourcing dead projects do have advantages for the licencors:
1. nobody likes the code they worked hard on to be dead
2. it's valuable free marketing for their brand name
Flash player might be dead, but that doesn't mean $THIRD_PARTY_LIBRARY that it uses isn't still being profitably licensed by its original developers. Or maybe the player uses a library that Adobe have a perpetual binary license to, but the original company that owned that library went bust a decade ago and nobody knows who owns the copyright on it now to allow a relicense. Open sourcing things does have a cost, and a big chunk of that is in running down these legalities.
Open sourcing yes, but what about just "opening the source" aka a source dump with no rights given?
I can't see myself using the source for anything, especially since all browsers are dropping support for plugins. But I'd really want to see if the source is so bad that they couldn't fix the issues (crashs, battery usage), or if it died due to political reasons.
you could make a case for ms paint. its a simple program and ms could gain some easy points by doing this. but flash is a very useful thing. to open source it is to create a free competitor that will hurt your chances when you could release something similar. which adobe is likely to do.
Shumway is not under active development. The actionscript runtime itself is pretty good, but getting compatibility with the Flash API surface turned out to be practically unachievable.
Hate flash however much you want. I learned to program with old ActionScript and wrote my first game as a kid (that actually taught me OOP and laid good foundations for JavaScript which is almost identical). To this day, all the applications I wrote still work perfectly. That's an achievement. Not to mention, Macromedia (later: Adobe) Flash was a fantastic environment for minigames and I haven't yet seen anything replace it properly. I weep for today's children, is there a good alternative? I mean, a program where you can scribble, make a movie clip out of it and make it move with code, just like that. And then publish it on the internet effortlessly.
Same here. "I learned to program with old ActionScript and wrote my first game as a kid (that actually taught me OOP and laid good foundations for JavaScript which" ... was way inferior to AS3. AS3 was based on ECMAScript 4 that was later abandoned by JS vendors. Until TypeScript came along JS was horribly inferior to AS3.
I will be forever glad for AS3 and the Flash ecosystem.
I started to learn AS3 but quickly transitioned to other technologies because even back then, the end of flash was forseeable. I liked AS3 but it was time to move on for a variety of reasons, among them a desire to have more control over hardware accelerated rendering and general performance concerns.
Fun fact: At university, a teaching assistant at "Introduction to programming" asked in which languages we've programmed before and I said ActionScript and he said that is not a programming language :)
Actionscript is nearly identical to forms of Javascript, so I'm not sure what you find about learning your time with Flash that wouldn't be transferrable.
Adobe Animate CC is the new version of Flash Pro that builds for HTML5, and if that doesn't float your boat, there's a wealth of JS libraries like pixi and p5.js that look extremely inviting.
There was a time that was a great career path. However, you never can predict how well a technology will perform, especially if it's tied to a closed platform. I suppose this speaks to the power of open source.
Then again, Animate CC should allow you to use those skills for the various platforms it supports.
Without Flash live streams on Youtube cannot be played in Firefox 45 on Windows XP. So Flash is still useful.
And by the way videos in Twitter and Vimeo don't work in both Chromium and Firefox on Windows XP. Because HTML5 video cross-platform compatibility is not perfect and developers have chosen not to encode videos in formats supported on this platform.
We built the FarmVille-engine using AS3 and I still think it's one of the best programming languages I've ever used. Static typing, access modifiers, and performant. Low friction for new users (most people had the plugin, we could stream the main binary and assets)
0% chance we could have built the game using any other client-side tech stack available at the time.