One of the best parts of a "dead" platform is that it doesn't change!
It was an incredibly accessible authorship tool that produced cross-platform single-file animations that were low-bandwidth and scaled.
We still haven't made up for its loss. Javascript + canvas + web stack is a mess. If the Ruffle runtime could quickly start up, I'd start authoring new Flash.
The only way this could ever have been possible is if a widely-available and -adopted Flash runtime was made that was ironclad in security and reasonably performant. Ideally, it would also have been open-source.
Honestly, while I absolutely sympathize with you and people who share your feelings on Flash, I genuinely believe that its demise was better for the web, especially given that Adobe very clearly had either no interest in or no ability to make such a runtime. With Flash dead, there was huge impetus to make reasonably open and widely-accepted standards for more explicit layout, animation, and other kinds of presentation on the web—and now we have that! It may not reproduce absolutely everything Flash did (particularly on highly Flash-specific sites like Newgrounds, where you're guaranteed to have people trying to push the boundaries of the medium), but it does reproduce the vast majority of what Flash was actively used for on the web in general.
Like, my God, do you remember the restaurants that used Flash just to do simple mouseover drop-down menus? Do you really think that kind of bullshit should still be done in Flash?
They've moved to restaurant specific apps (written in Swift or an Android equivalent), that you need to install on your mobile device just to order from their menu. While in their store already. :( :( :(
Nonsense. Java is one of very few languages that was designed to handle untrusted code from day 1, and it showed in having far fewer vulnerabilities than Flash.
Unfortunately the JVM was slow to start up, so you had an even worse "grey rectangle effect" than Flash, and applets like all plugins were poorly integrated with the rest of the page. Top that off with Java not being particularly great for writing UI or video in (it's fine, but it's not great) whereas Flash had excellent tools for doing vector animations and you can see why Flash was more popular.
Flash at least implemented a VM with a fairly minimal surface. It can only blame its quality of implementation.
Lolwhat? It's fine. It worked great. (It had some vulnerabilities in its history, but so does every sandbox/hypervisor/what-have-you out there)
It granted access to _code_, not to the environment. Basically, you declared in the manifest that "com.mycompany.blah.*" wants to have full access rights, and SM granted permissions to that _code_. So it was predictably easy to subvert this, because Java code was not typically written in defensive style, sanitizing all the input data.
All the modern sandboxes instead isolate the environment.
I shed tears for the Flash games that were killed off by the demise of Flash. I don't shed any tears for Flash itself.
The way some people used to make entire websites as flash apps that would bring old computers to their knees is not something I miss. Websites that should have just been static html, like a restaurant's website for their menu, were getting turned into monstrously inefficient interactive nightmares that wouldn't even load at all if you didn't have flash (which btw, broke constantly with Linux.)
This kind of superfluous interactivity is still possible with javascript/etc, but it seems to be less popular and is more likely to gracefully degrade (usually the relevant content still displays even if you have JS disabled.)
What has filled the role of flash for commercial websites is native iOS and android apps, which still somehow end up being way larger than a flash payload and also drain battery faster.
The truly magical bit of flash though was the small scale culture of making tiny little once-off things to share for the love of it, for free. Hacker culture, if you will.
In the flash days, you could make a little toy for fun as a 10 year old kid without a credit card, post it on newgrounds for free to let others see it, brag to your friends, and feel good. Now, you need to buy a macbook ($1000) and apple dev account ($100/yr) to be able to share your dumb joke with your friends at school.
No wonder young kids instead use the even more closed roblox platform to make dumb jokes rather than building iOS apps.
> This kind of superfluous interactivity is still possible with javascript/etc, but it seems to be less popular and is more likely to gracefully degrade
I'm sorry but— do we live in the same planet??
Either you only browse websites you find on marginalia.ru or there's no way you're possibly serious about this.
By my estimation, 90% of websites work better with all javascript disabled (by works better I mean they displays the content legibly and doesn't waste my bandwidth or CPU time with superfluous nonsense). 9% need first party javascript enabled. 1% need more.
Here's a short clip of me browsing the top results for pecan pie recipes: http://0x0.st/HJUU.webm
I chose this example because I think it's relatively representative of normal web browsing without a techie/retro bias, but the same demonstration works with links from HN too. All of these pages are rendered with javascript disabled. Most websites behave like these. Websites that need javascript, like youtube or various social media sites (including github, the only site presently linked on the HN front page that needs javascript), are a small minority.
But the iPhone and iOS really killed it by not supporting it, at least that's my memory of it. I remember feeling fundamentally "uncool" by doing Flash/Actionscript/Mxml because right when I got that first job out of college was when Steve Jobs was doing the "Flash sucks" rounds. "It's dead." etc.
I remember a couple of the Flash folks at my job went to a Flash conference where they would do cool things with art and animation. When they got back they bumped into some members of the iOS team who back then were the new hot commodity (both in demand and salary). And they said to the flash folks: "Oh people still use Flash?" snicker snicker.
As an entry-level at the start of my career it made me feel like I was deprecated out of the gate working with legacy tech.
I still remember Actionscript fondly though as well as all the web games I'd play.
The reason why Flash became so popular is that while the development tools cost money, the player was free for anyone to install. Browsers eventually started installing Flash by default (mostly so they could solve some of the security issues with prompt updates). By 2005, Adobe had a major monopoly on dynamic web content.
And then smartphones and tablets became a thing. Adobe didn't want to keep giving flash away for free, they wanted to exploit their monopoly for profit, by charging phone manufactures 25 cents per device for the right to include the flash runtime on their phones. Many Symbian, Windows CE, and later Android phones were paying this licensing fee to Adobe.
I suspect this royalty fee is large part of the reason why Job's "Thought's on Flash" letter came about. The letter mostly talks about need for open standards, and it is right. But I think Adobe's insistence on royalty fees really rubbed Apple the wrong way. Maybe if Adobe wasn't trying to extort smartphone vendors for royalty fees, it would have survived, and Adobe could still be charging money for the flash creative tool today.
Hell, if Adobe weren't trying to profit of the runtime, they wouldn't have had any objection to making the runtime an open standard and allowing anyone (including apple) create their own flash runtime implementations.
Flash didn't die because it was bad. Flash died because Adobe tried to exploit their monopoly for profit, and the wider industry responded to the threat.
Well, it certainly wasn't helped by the Flash Player being a never ending source of serious security exploits, sandbox bypasses, and more. :(
I remember a number of people pushing Adobe to transform the runtime into an open standard. Then every browser would have been allowed to create their own implementations that actually fit with their security model.
"Only". Heh. Bit more than just some minor implementation detail, seeing has until Ruffle there's never been a successful 2nd implementation. ;)
Plenty of false starts and half arse attempts to make one, but none that gained traction until now. :/
If Adobe had committed to turning Flash into an open standard back when it was still relevant (certainly before 2010, maybe as late as 2013), various companies like Google, Microsoft, Apple and Mozilla would have committed dozens of full-time engineers towards working with Adobe to document flash as a proper standard. And then those engineers would have gone back to their browsers to create implementations.
None of those companies would have made a 2nd implementation of flash back then without Adobe's permission. Not only did they all have working relationships with Adobe (mostly around keeping adobe flash player updated and secure), but there was a risk Adobe might sue them.
Also, without an offical standard, Flash was a moving target. Part of the reason why Ruffle is viable now is that Flash is dead, and there is no offical implementation that might change at a moments notice.
Which is a shame because it was bad.
If you don't like the idea of paying Adobe money you can use Apache Flex, which is the FOSS version of Adobe's toolchain. That's a command line compiler tool, of course, and it only compiles AS3 files, so you'll still need to author and link graphics separately, and for vector art stuff you'd probably need to find a way to convert SVGs to SWFs, embed them in your main SWF thru some weird class declaration magic in Flex, and deal with the subtle masking problems that would cause.
there are a few open source tools that can create SWFs, but the old adobe tools are the best unfortunately (up until cs6) thankfully those programs are floating around out there
the only thing about flash that really seemed to die was support from adobe (and they had long since stopped caring, good riddance) and the browser plugin itself. all the rest is all still up and going
We still write fresh new AS3 code at $work. All IDEs and tooling are running fine on W10/W11.
- flash plugin bundled into electron, for players with old hardware, ~30% user base
- Flash transpiled into TypeScript transpiled into ES5 JS, with custom runtime based on WebGL
The whole runtime is kinda like Ruffle, but we don't support all Flash capabilities, just what was required to make app running (but it's still a lot of API surface).
Obviously the back catalog is insanely massive, but from what I hear a lot of developers loved making Flash games - it would be interesting if anyone were dedicated enough to try to revive the scene.
It's true that it's not really needed anymore and there are some promising web standards evolving every day. But that never stopped the crazy ones from making it work anyway. People are still finding ways to make new games for old Nintendo hardware.