I can no longer compile my first Flash game
devtails.xyz
devtails.xyz
By the beginning of 2010, it was clear that the App Store was likely to become a massive cash cow for Apple. Flash was direct competition, however. If one could play a game in a browser rather than buying it, Apple would lose out on that income. Everyone was clamoring for Apple to add Flash capability to its mobile iPhone browser. Adobe offered all help, yet Apple continued to drag its feet. It became obvious something was going on.
In April, Steve Jobs wrote an open letter, "Thoughts on Flash", stating, among other things, that HTML5 could deliver a superior experience to Flash and that Flash had such inherent security and performance problems that they could never be rectified.
These were lies, but Apple's henchmen in tech media, especially Wired and Gawker, repeated this lie endlessly, destroying a creative ecosystem and industry so that Apple could have its App Store.
The web is still to this day unable to deliver an experience like Flash could, and likely will never be able to.
I think the browser has been on par with Flash Player for a while, but Flash-the-authoring-tool (to my knowledge) does not yet have an equal. (I'm told Adobe Animate, the rebranded Flash authoring tool, is somehow unsuitable for creating games, despite HTML5 export features.)
To put it another way, I think we've more or less replaced the Flash Player, but we haven't replaced Flash Professional. (As others have mentioned, Unity kind of covers the same ground, but not really.)
This post seems to confuse capability with actuality. Sure, we have the technical capability for a Flash-like player and authoring tool, but it does not exist.
You can do all that now with various tools but the ecosystem is so fragmented that you often need specialists for each of them. The Flash tools had so much reach that you could bounce between such wildly different projects with very little friction. As a consultant it was amazing, you just did it in Flash. Nowadays there are so many competing and fragmented solutions that you need to evaluate then glue together.
What's more there absolutely are "html5" experiences that rival the old flash experiences. In most ways these experiences are much better. Perhaps as an old commerical flash developer youbhave a rosy memory of flash in the naughts. Back in the day, the only time I wasn't pissed to see flash loading was when I played flash games, every other use of flash was generally awful and I would usually immediately close a page if it started loading flash. As much as I hate the bloat and SPAification of the web, it is still far better than what most sites did with flash.
The demise of flash is complicated and has a lot to do with the rise of mobile. Android did support flash but even on that platform, native games simply outperformed flash games and the market demand shifted. If Apple had supported flash on iOS, this shift would probably have been slower but flash would still have lost out.
Flash died not because it couldn't do mobile. Thinking this is part of the hit job orchestrated by Apple. Flash died because browser games can't be taxed by Apple.
The same thing is happening today with progressive web apps. Ask yourself what Apple could have against those, and now look backwards at their stance on Flash.
I never said it couldn't do mobile. I said it couldn't do mobile as well as native.
Flash died faster because of apple, but was always going to die due to the combination of the rise of app stores, mobile battery issues, and the advancement of web standards.
Apple did the work to integrate flash into the iPhone before they rejected it.
I think it is interesting that Apple gets all the blame here since the decline of flash also coincides pretty directly with it's acquisition by Adobe. Youtube's early moves to offer non-flash video also had significant effects.
While I am a big critic to Apple's approach to called gardens, the decision against flash was as much prescient as it was causative of the decline of flash.
Adobe did not want Flash to die, and their product manager was very involved in the community to figure out what needed to happen to prevent that. I don't think Adobe invested enough into those demands, but still there was steady investment made. If they had more time, and Apple wasn't such a bully, the tech could have evolved and survived.
Adobe built Stage3D so that one API could target GPUs across desktop and mobile. Think WebGL, which was released around the same time. But production-ready due to the distribution advantage the flash player had over browsers at the time.
Adobe funded open source projects such as Starling to create scenegraph-like APIs on top of Stage3D, providing an on-ramp for all existing AS3 devs to the new paradigm with their existing API knowledge and tool chain.
At this point in the timeline, any AS3 dev could write cross platform games and apps if they picked up a handful of mobile GPU concepts like draw calls, texture maps, and bitmap fonts. (You could take all these things for granted in the traditional Flash scenegraph.) Unity existed at this point but did not yet have dedicated 2D libraries. You'd be rendering your 2D game onto a face in a 3D world, with a fixed camera. Total overkill. They wouldn't be as performant as Stage3D for a couple years.
I disagree with the assessment that Adobe was a bad steward because I saw them trying with my own eyes.
I also disagree that Flash couldn't do native apps with native performance because I built them with my own fingers.
Lastly I disagree that web standards obsoleted Flash because where are the web games? Why aren't they playable on mobile safari? Why don't the web standards come with a dev environment and where are the dominant Flash monetization models?
Apple played hardball so that the only way to be on their platform was to use their tech in their way signed off on by their reviewers and monetized by their app store. They also wrote FUD pieces like the famous Jobs letter.
Who was the villain here? Is Apple justified robbing us of a Maker's renaissance era because it wasn't mobile ready at the literal dawn of mobile computing?
All over the place. I see them regularly posted to HN. Did you miss the entire '.io' trend of web games? The market is smaller because it was partially eaten by native mobile games, but it is alive an well.
> Why aren't they playable on mobile safari?
Aren't they?
> Why don't the web standards come with a dev environment.
That's not what standards are. There are a plethora of web development tools and frameworks that target the web. All of these target different needs and visions.
> Is Apple justified robbing us of a Maker's renaissance era because it wasn't mobile ready at the literal dawn of mobile computing?
> I disagree with the assessment that Adobe was a bad steward because I saw them trying with my own eyes.
Adobe abandoned mobile flash development in 2011, when mobile was a fast growing, but still small part of the market. This is also when android more or less caught up with iOS in terms of adoption.
If adobe had continued investing in mobile development, would flash have survived? In retrospect, this is the decision that put the final nail in flash's coffin as mobile won the eyeballs.
If Apple had included flash in iOS, would that actually have saved flash?
Was a closed source, proprietary ecosystem that was late to mobile ever really going to stay the dominant media delivery platform or even survive?
We don't know the answer to these questions but placing all the blame on Steve Jobs is simply too simplistic to be true.
Next: They weren't playable on mobile Safari, no. Safari finally supports WebGL 2 as of Sept 2021. A full 4 years after the other browser vendors supported it. Why drag their heels on this open web standard? Does their platform have something to lose from a little competition? You condemned Adobe for being 'late' to mobile (citation needed) but don't condemn Apple for being late to a web standard meant to replace Flash like they said in their original FUD letter?
Your retelling of Adobe's history is wrong. They were still very much invested in mobile development up until the end of Flash. In fact to this day you can still use AIR to target iOS and Android with native apps. They release updates regularly.
It's very clear that you don't have any idea what you're talking about, have not interacted with these companies professionally, and have not used the technologies in question or even followed along.
The only way to make sense of the facts is to accept that Apple lied in their letter because it was good for Apple's business and that goodness came at the expense of end-user choice.
As an android user with an embarsingly high level on Kongregate back in the day, I can tell you that almost no flash games worked well on mobile, even in browsers that did support flash. The mobile flash gaming experience was just bad, which is a big part of why it died.
> Your retelling of Adobe's history is wrong. They were still very much invested in mobile development up until the end of Flash. In fact to this day you can still use AIR to target iOS and Android with native apps. They release updates regularly.
Yes, Adobe abandoned mobile flash in favor of AIR targeting html5 and native apps in 2011. That is exactly my point, Adobe abandoned mobile flash which was another big part of why flash died. See: https://www.pcworld.com/article/478103/adobe_ends_mobile_fla...
> It's very clear that you don't have any idea what you're talking about, have not interacted with these companies professionally, and have not used the technologies in question or even followed along.
It's clear you don't have a real argument or facts to back it up if you resort to this kind of crap.
Flash sucked on mobile. The VM wasn't as fast as JS JITs in the browser by a long shot. By the time the processors could keep up, Flash had already been dead for years.
Adobe Air existed on mobile and it wasn't a good experience either.
I typically work for creative digital agencies, and every single project requires so much tool/framework/library exploration now. Back in the day, you would always just use Flash, and you got the project done really fast. Everything takes so much longer now, and it’s because of tool fragmentation, or just plain lack of tools.
If I ask the question, “what animation tool should I use for animated web content”, there just isn’t a good answer. Back in the day, you would just use Flash.
And back in the day, I would close your site as soon as it opened if it started loading a flash animation. Using flash for a website animation was never a good choice, at least not for the end user.
I am perfectly happy to have a higher bar for rich web content if it means a less user hostile web than we had when flash was everywhere.
If we really need a more integrated and cohesive experience for content authors, then go out and make it. The fact that one doesn't exist may indicate that there isn't a cohesive demand for such a tool.
I would say that the scale, scope and complexity of that ecosystem outgrew the ability of one or even a few tools to satisfy it.
The idea that flash was ever going to survive as the one tool for interactive content, videos, games, animation and more is simply silly.
I think that market is actually pretty small since most of the use cases that flash was filling are better served by the varieties of tech that exist today.
And yet Flash persisted across the web, until a giant like Apple decided to de-platform them in favor of its own lock-in solution.
Consumers for the most part have no idea what tech lies under the hood for the websites they visit.
Flash was a proprietary technology that bootstrapped the early web but was doomed due to a combination of ongoing security issues (which pushed browsers to move it to a plugin and disable autoplay) and poor support for emerging platforms.
> Consumers for the most part have no idea what tech lies under the hood for the websites they visit.
The vast majority of of the tools and languages that lie under the hood for websites, especially on the frontend, is built on open source tech.
There are plenty of shady things that Apple has done, but it is ridiculous to blame Apple for single handedly taking down a doomed technology. This is an example of Apple's prescient side, not it's nefarious side.
There's no brush or pencil tool, only a very bezier-oriented Pen tool. You're supposed to take the results and integrate them into your game/app using one of their various cross-platform integration libraries. So you'd still have to use something else to make the game, this would just help you make animations (and maybe art, if you like bezier curves).
Still, in an era of "render your vector art to bitmaps and dump them in Unity" it's nice to see a tool that does realtime rendering of vector-art animation :)
It doesn't seem like it would be too hard to use this to make a HTML5 game (they provide a wasm module for playback of assets) but it's definitely a ways off from a fully integrated solution (and they don't currently seem interested in that aspect).
You're way too hung up on this idea that everyone loved Flash until Steve Jobs commanded them not to. My understanding was that it was pretty easy to create animations and rudimentary games in it, so, sure, maybe creators were pretty fond of it? Maybe even too easy, which is why we saw "look what I can do!" Flash websites in places where it was entirely unnecessary and unhelpful (restaurants were notorious for this). But end users never liked it. Or Java applets, for the record.
This is a thing that literally never happened. No one said anything like this until after "Thoughts on Flash"
Not sure what you're saying, here.
> The web is unable to deliver an experience like Flash could, and likely will never be able to.
Plenty of Flash content can be converted over to HTML5. As an example, this old website: https://www.homestarrunner.com/
Which part?
The lie was that these were inherent. "Thoughts on Flash" could have said "We have specific, actionable requirements, and if Adobe can meet them, Apple would be delighted to welcome Flash onto the iPhone". But, welcoming Flash was not the goal. Destroying a competitor was the goal.
I liked Flash too.. but the reason we don't have "HTML5 Flash" is only due to business decisions from Adobe headquarters. Since Steve Jobs prediction was correct (even if by chance) that power-wise, HTML5+JS=FLASH.
This comes off as a just-so story to explain Apple's actions. That Apple would criticize Flash for being closed-source is absurd, but that people would repeat that as a valid criticism is baffling.
By the way, only the run-time was closed source. Build tools, language, was all open-source. You didn't even need Flash to compile a swf.
> power-wise, HTML5+JS=FLASH
I'm not sure what you're saying here. "power-wise"? What does that mean?
HTML5 has in over 12 years never been able to deliver the experience that Flash does. They are completely different things. Jobs' successfully conflating them in everyone's mind is a testament to his power as an influencer. Awesome, really.
That's how propaganda works. You need a lie and some newspapers to amplify it. Jobs was a "good" propagandist.
In his open letter [1], Steve Jobs specifies his open source contribution for HTML5 and the Webkit browsers. Meanwhile Adobe itself did not contribute any. All the available tools noted above were not officials. He was very correct at the time.
Also noted in the letter, the incentives in play are actually the opposite of what you have said, as how Apple and Adobe work together bringing Adobe software to Mac. Why would Steve Jobs hurt any Adobe product, isn't it hurting the MAC demographic at the time (artists)? As there was never any Apple software competing with Adobe.
IMHO, it's more likely that flash on mobile were to be a real problem holding the iPad\iPhone back if supported. So much so, Steve had to publish it and gain support from the outside world. Because I doubt any C-Level executive would be behind him destroying the mutual relationship with adobe.
[1] https://web.archive.org/web/20200430094807/https://www.apple...
I can see how all the aforementioned problems made it so Apple didn't want to include it on its mobile devices. And even if politics played some part in it, these problems made it easy for Apple to convince everyone else that retiring Flash is the right thing to do.
Yeah, see this? This "riddled" word? That's how I know you're just repeating what you read. It's a tell.
Jobs + Wired + Gawker + Apple made an incredibly strong conceptual gravity well that makes conversation about this difficult. They all use this "riddled with security holes" phrasing. It's like you just repeated "No, you don't understand. Brawndo is what plants crave."
What security holes? Specifically? Were they more serious than any browser?
Could you expand on this? Your point is the Flash had vulnerabilities?
What software doesn't? https://www.cvedetails.com/product-list/vendor_id-1224/Googl...
Remember, Jobs' contention was that Flash's problems were inherent. Can you support that?
https://www.cvedetails.com/product/2935/Apple-Safari.html?ve...
So, objectively, Flash did have very persistent security issues.
A modern browser is an amazingly complex piece of software. A gazillion parsers with the ability to handle malformed content that should give anyone nightmares. Multiple JITs and interpreters. Layout handling with incremental grid calculation algorithms that gave me vertigo - before I understood that it was done asynchronously.
There is no way in hell flash is anywhere near as complex.
Browsers now are very complex. At the time, we were still dealing with IE6 and JavaScript 3.
Flash could do literally everything that browsers at the time did, and more. Load and display multimedia files, animate them, interpret ActionScript, and do it cross platform, cross browser, in a performant, relatively secure manner.
At first, you were merely overly aggressive. But this is turning into bullying.
Browsers weren't as sandboxed and hardened as they are today, and flash plugged directly into them.
Flash was one of the most used vectors for adware, all you had to do was visit some shady website.
[Citation needed]
Let's look at the entire context.
https://www.zero-day.cz/database/?set_filter=Y&arrFilter_pf%...
And, yeah, Flash did suck as an end-user experience. For a few years it seemed like every restaurant in existence had an all-Flash web presence, and, no, waiting for endless animations while wading through some entirely non-standard "rich media" experience, while listening to my laptop fans kick into overdrive, did not "surprise and delight" when I was just trying to find their hours and a menu. It was absolutely infuriating.
This is ignoring that one of the major malware vectors that wasn't a zero-day at the time was to just put up a webpage claiming that Flash was out of date, and then linking a fake updater. Sure, that wasn't entirely Adobe's fault, but if they'd done a better job of keeping it up to date on their own it would have been an awful lot less believable to end users.
Your aggression, on the other hand, is uncommon. It is a tell.
As a native English speaker, I can assure you it's not a common technical term at all. It's a poetic phrase, designed to elicit thoughts of illness and damage. A house can be riddled with termites, a body can be riddled with cancer, a bridge can be riddled with rust. But Flash, uniquely, is "riddled" with security holes. No one says that about Windows.
https://answers.microsoft.com/en-us/windows/forum/all/why-is...
“Why is Windows 10 riddled with so many bugs and the updates make matters worse?”
It’s likely time to admit that you’re wrong. Riddled is a word, the meaning fits and people use it to describe software.
I never, ever, read the Jobs manifesto against flash. Never cared to read any article about flash back in the day and I absolutely dreaded opening a website that used flash.
It was a guaranteed loading times on my bad internet, followed and/or preceded by a notice saying that I needed to install this crapware or update it. Not to mention my numerous crashes directly related to an unresponsive flash application.
But as you clearly wrote somewhere on this thread, this was probably due to me using windows and most flash devs using macOS.
As someone who just learned about jobs hate to flash and never touched on a MacBook in his life. I’m extremely happy this technology belongs to the past.
This is actually another lie that has somehow been retconned into the collective narrative. Baffling.
I was a professional Flash developer at the time, working for brands like Nike and Johnson & Johnson. We as an industry used Apple almost exclusively. This was not a common observation until after "Thoughts on Flash"
Also, look at how slow Adobe is in keeping things updated for newer platforms. I'm happy flash is dead, and I hope creative suite will follow.. Probably not though.
This was 2009. "Responsive layout" was barely a concept. Most HTML/CSS websites didn't have responsive layout. We were still figuring out all out.
Flash was as bad as Java Applets. They both tried to solve problems that couldn't be done with standard web technologies at the time. They both needed extra plugins so they could work... while everything else just works in the browsers. They have no place in web development.
It is also true that the vast majority of web pages done in Flash did not do it.
Sure, there were downsides to Flash. It's true that many Flash-based apps/websites used more battery power than html/css stuff. But I'd argue that this is an indicator that there is a demand for rich content on the web. Since Flash was killed, we've seen a resurgence of all kinds of heavy JavaScript libraries, and forums like hackernews are full of people complaining about websites being sluggish and slow to load because of the amount of js that's being injected. Well guess what - now we've just replaced Flash with a fragmented open landscape.
Is it better? Maybe - to a degree the openness of html/css/js is good for obvious reasons. But to be honest, I think the web still hasn't recovered from the blow Apple gave to the creative ecosystem that had been built up around Flash, because there still isn't a similar tool that allows you to easily build web-based rich, interactive experiences, full of animation and rich graphics, the way Flash did about 15-20 (!) years ago
As a flash consumer from 2001-2011 I must tell you that honestly; flash was fucking painful.
Run a very weird binary blob riddled with security holes and questionable browser integrations or suffer.
Yes, some things became possible (habbo hotel, flash games, video/audio before browsers supported it) but it wasn’t worth it. I very much wanted flash to die by 2006 and ran a lot of extensions to bypass flash on Linux such as the “HTML5 everywhere” browser add on that tried to force YouTube to use HTML5 video (with mixed results).
I think anyone looking at flash now is romanticising the past. It was the least enjoyable thing about web browsing in the 00-s
There it is again! That specific phrasing. Curious. [1]
> "flash on Linux"
Yes, Flash on Linux sucked. We're talking about macOS, and it did not suck on macOS.
> Maybe you have a bias since you worked with flash.
Oh, absolutely. I chose to work with Flash because it was great! But that's not really germane. I would not have wanted to work with Flash if it sucked on Apple, since that was the platform I used at the time.
“Riddled with holes” is the original phrase, usually when referring to worn out clothing or something which has been damaged with many punctures.
It’s not a conspiracy or a retcon. I think I have tweets from this period where I was extolling my frustration with YouTube specifically for requiring flash.
To be fair I didn’t use Apple computers in that era so you could be right; but I did use Windows and Linux and Linux was by far the least favoured by adobe, but it still wasn’t pleasant on Windows.
I bought my first MacBook in 2011 and flash was already dead by then.
It's inevitable when talking about Flash, but not, say, Windows, or other contexts with security vulnerabilities. Always "Flash" specifically "riddled".
I just googled the phrase:
https://www.computerweekly.com/news/252512175/Investigators-...
https://blog.avast.com/aws-freertos-riddled-with-security-vu...
https://www.zdnet.com/article/hola-vpn-still-riddled-with-se...
https://securityinfive.com/episode-659-tiktok-riddled-with-s...
https://www.computerworld.com/article/2490527/many-antivirus...
It’s a common phrase, not a conspiracy.
It might not be common vernacular in your neck of the woods, but it is where I'm from.
The least enjoyable thing about web browsing in the 00-s was javascript. Pop-up windows, window resizing, stealing focus. Now javascript is still the reason web sucks. And security has not improved much.
What?!
Modern browser security has gotten orders of magnitude better since Shockwave Flash was removed from web browsers. The sheer unending volume of security vulnerabilities flash introduced into browsers was staggering. Flash (until very near the end of its life) had no sandboxing, and had its own update mechanism. It was the norm for people to be running old versions of flash with unpatched security holes. And flash had so many vulnerabilities - if memory serves, flash generally fielded more CVEs in any given year than the entire rest of the browser!
Remember how revolutionary pwn2own was? "Wow, find a vulnerability and win $1000!". These days vulnerabilities of that magnitude are worth way more money, because of how secure the browser environment has become. ($100k-$1M on the black market as I understand it.)
The only reason it feels like security hasn't improved much is because crypto ransomware has made hacking so much more profitable. But even then, most randomware doesn't usually take advantage of security vulnerabilities in web browsers. Its really quite remarkable how secure the modern web has become; and that wouldn't have been possible if flash were still around.
Theses amounts were low because there was no interest in rewarding white hat hackers sadly. Bug bounties at the time were extremely rare. It wasn't lower because it was easier (though it may have been easier, not arguing it wasn't, just that the amounts are not evidence of it).
> ($100k-$1M on the black market as I understand it.)
On the "white" market you means. Zerodium is paying theses amounts. I don't feel like it would be higher in the black market than what they are offering, but could be.
Speaking of which, in 2020 Zerodium stopped accepting "Apple iOS LPE, Safari RCE, or sandbox escapes" for a few months because there was too many of them... still no "Thought on iOS" yet... It's not like it's even a new thing, I remember a long time ago when you could jailbreak your iPhone using a website directly.
Didn't even need to go far either... check CVE-2022-22620, only a month ago.
When I say “was not worth it” I am implying that it was not worth it for me.
That I often didn’t enable flash even if I did enjoy some of the things flash provided.
I still firmly believe that we have much less energy consumptive software since flash died, I recently brought back some old /f/ content from 4chan and ran a flash emulator written in rust and it crippled my laptop, so it hasn’t improved a whole lot.
I hated it so much and it was so forced upon me that I am finding it extremely hard to have sympathy for you.
Well, it had the ability to be one if a shade tree programmer didn't garbage collect their assets. Something that could easily be tested in an app platform. You could make amazing games that used only a few megs of RAM, or you could make a crappy app that hogs hundreds.
Perhaps too little too late and with a terrible track record.
IMHO, Flash distribution and compatibility versioning was a mess. When you got a new version, you could not access the previous releases on the Adobe site, at least for Linux builds. Overall, I think Flash's demise was more up to how Adobe managed it.
This is another weird collective retconn that is not true.
Apple was not alien to Adobe the creator of Photoshop and Premiere and After Effects. If anything, Adobe is less comfortable with Windows, which usually lagged a bit behind with versioning.
I'm glad that both browser based flash and java applet died.
Still, the reason that websites had Flash at all is that it was easy to create a beautiful experience - admittedly, only for those on macOS and Windows.
It would be helpful if you could point out specifically which of these two elements were lies. Because they look like truths.
Your tale doesn't realistically explain why Apple would permanently close the door on Flash, and do it in such a public, reputation-damaging way. They didn't just want Flash to improve, but they wanted to destroy Flash. And did!
That Flash was a competitor to the App Store does explain their actions.
The opposite was stated in a legal deposition by Scott Forstall (ex-SVP of iOS) just last year[0].
We did not ship Flash. We tried to make Flash work. We helped Adobe. We definitely were interested. Again, this is one where I thought if we could help make it work, this could be great. Flash has been such a problem because the way that it hooks into systems, it’s been a virus nightmare on Windows, even on the Mac. And when we got it running on iOS, the performance was just abysmal and embarrassing and it could never get to something which would be consumer value add.
[0] https://9to5mac.com/2021/04/27/apple-tried-to-help-adobe-bri... and many other places which reported it
It's entirely possible to say each of those things, under oath, be accurate, and still absolutely undercut things.
I wouldn't expect an SVP of Apple, in a lawsuit to say, "Yeah, we really didn't give a shit, and weren't sad that it failed."
Flash was available on several Android phones of the time. These phones had faster processors than their iphone competitors and the experience still sucked. I liked having the option at the time, but it was a terrible experience every time I was forced to exercise that option.
The biggest contentions of the time would have been videos and games. Video caused issues because flash player only sites were everywhere. On the other hand, they released canvas support (necessary for performant games) in 2010 the month before Jobs released his letter.
>I was a professional Flash developer at the time,
I think your personal financial investment into the Flash development platform biases your history.
In contrast, I wasn't a Flash programmer and only a user and I disagree with your claim that it was an Apple-orchestrated conspiracy.
Even before 2009, I (and many others) dreaded the Flash plugin. Yes, the early Youtube used Flash but when a website like a restaurant displayed their menu using Flash, it was a terrible experience. Each time a website displayed the "Flash plugin required" , it was a hassle. And even after downloading the plugin and then visiting the same website a week later, you'd inevitably get "We're Sorry -- You need to update your Flash Player".
Adobe Flash was also one of the top reasons in early 2000s for desktop browsers to crash. Misbehaving plugins like FLash was one of the motivating reasons for Chrome to make a bold architectural decision to isolate each tab into its own process so Flash would not crash the entire browser. The Chrome release was 2008 which was before the 2010 Steve Jobs "Thoughts on Flash"
Based on countless developer testimonies (such as yours), I'm convinced that Flash was wonderful for the programmers & content creators -- but as a consumer of computers since the 1980s, it was one of the most user-hostile technologies. A lot of us didn't need Steve Jobs to tell us that Flash was suboptimal; we experienced it firsthand.
>The web is unable to deliver an experience like Flash could, and likely will never be able to.
Again, as a user, I see no website today and think to myself, "I wish this was using Flash because it would be so much better." Can you give a compelling example?
The browser's language is a natural monopoly.
Flash did one thing - animation - really well, and everything else badly.
Simply the inability to bookmark a location inside a Flash presentation meant that you could never use Flash to write your whole site - it was always going to be blobs of Flash on top of a fundamentally HTML structure.
Once we, the programming world at large, saw with Gmail what could be done with HTML/JS/CSS, the writing was on the wall for Flash.
(And also Flash was insecure; and there was no way to throttle poorly-written Flash applications running in the background on some random page, so very quickly the smart kids would only enable Flash on-click.)
Logically, there was no need for Flash to exist. Everyone saw pretty soon that all the facilities Flash had should be put into JS, which has the additional huge advantage of being able to manipulate the DOM.
Adobe didn't help it particularly with some fumbling, but they weren't ever going to win that battle, and they got out of it quite gracefully when it comes down to it.
But, I had a Nexus One with all its glory of running flash. Mobile experience with flash was horrible. Maybe, if Apple did add Flash it was adjusted similar to adjusting website for "mobile". but still, it's much closed standard than HTML.
Part of the reason it's so important to have WebKit, Gecko and Chromium is to avoid a lock-in similar to IE where in the past, many websites performed horribly on macOS (and Linux of course).
So I wouldn't say it all lies.
I then noticed that restarting the browser (which was, back then, just one of many open apps) instantly removed this sluggishness, and no more crashes - unless I forgot to restart the browser (I say "the browser" here because this happened regardless of which one I was using, out of IE, Chrome or Firefox).
Some time later, I set up a really underpowered Atom netbook for a friend, and, horrified at the slowdown when visiting some heavier pages, I tried to help with noScript (which didn't really work for my non-tech friend) and a "Click-to-play Flash" extension, and I marvelled at the difference it made. I soon started using it on my own laptop and immediately noticed that slowdowns and crashes had stopped occurring even if I didn't restart the browser for weeks.
I decided to completely uninstall Flash from Firefox, and for the few sites which absolutely required it I'd use Chrome which shipped with it - and recommended the same to most people I know, receiving the same feedback.
Years later, the "thoughts on Flash" memo came out, and I though "hey, cool, I got there faster than Steve".
I have hated Flash ever since my realization, irrespective of the security issues it was riddled (sorry if the word triggers you) with, and ditto with Acrobat Reader. I've come to consider Adobe a producer of awful, bloated, insecure and shitty software, and my computers are better off without any of it. I do love the PDF standard, just not Adobe's software for producing/consuming PDF documents.
I watch CPU usage closely, and for awhile there most of the time my CPU got pegged was because some random flash banner ("Click the monkey" crap) went out of control and started busy-looping in a background tab. I'd often came back to my computer to discover some random tab I had open was melting my computer. I hated flash for that.
But there was an easy solution. Pretty soon after that I installed a click-to-play flash extension; and the problem went away overnight. About 90% of the flash content my browser ever loaded was advertising, so it was like a lightweight ad blocker for the worst ads. Pretty soon Chrome built that behaviour into their web browser. And that was the beginning of the end for flash.
Steve Jobs did finish flash off when he blocked it on the iphone. But that didn't come out of nowhere. He first challenged Adobe to make Flash perform well on mobile devices. But Adobe couldn't meet his challenge. Flash never worked well enough on the low power smartphones of the day. People can blame Steve Jobs all they like, but flash would still be alive and well if Adobe had been able to ship a performant browser extension when it counted.
But they didn't. And now their product is dead. I pity the creators who made flash professionally, but I don't have a lot of sympathy for Adobe.
Then i have CPU C2Q 6600. And opening one site with 10 tabs i can see CPU spike up to 100% of all cores.
I found "click-to-flash" and some plugin for YT-to-HTML5 and this suddenly fix mine issues.
Mobile flash even didn't works good on high-end mobile devices because consume too much power. Since that devices are limited from their battery Flash was resource hog.
Personally, I find the loss of Flash less interesting than the kind of consensus-reality-warp that happened.
An article like [1] raised no cranky, contrarian alarms in anyone. Just, repeating "riddled with security holes" at everyone.
And yet that was the "Flash experience" for the majority of web users who were not into browser games...
Well, that, and animated ads.
And iPhone doesn't have the horsepower in 2010. Today's iPhone 13 is faster than 80% of the PC in single core performance. So I dont think it was a wrong decision at the time. May have been worth revisiting in 2015 or 2016, but Steve was gone. Adobe gave up. Despite Apple later changed the VM rules so you could ( correct me if I am wrong ) package Flash Games as App. By that time Adobe has stopped all development on Flash.
And it is sort of strange, because those flash website was essentially what we have for apps today. So may be it wasn't all wrong. It was the wrong place at the wrong time. Sigh.
>The web is still to this day unable to deliver an experience like Flash could, and likely will never be able to.
That is the sad part, but partly because no one wants it to. Google for the past 10 years wanted to make Web Apps and Javascript or whatever they deemed good and nearly completely ignore Web Page ( until fairly recently ). WebKit was moving very slowly for the first 5 years before pickup up some pace in the last 3-4. But both of them never intended to have Web Browser to deliver something Flash could. And frankly speaking they couldn’t care less.
This is not "what happened here". It's your weird anti-Apple take on what happened.
Ask anyone that actually used Flash on Android. It was terrible. Far worse than the HTML5 video experience that iPhone users got (when it was supported anyway).
I agree the web is still catching up to where Flash was for game. But games weren't the issue. It was all about video.
Not only that but the DX was so much better than anything today in the JS world.
We had a TS like language 15 years ago. IMO TC39 where really stupid to trash the ES4 spec (based on AS3).
The Flash standard library was really awesome. The only third party dependency I used regularly was a tween engine (Zigo first and then TweenLite) and a Signals implementation.
From what I've read the perf and security issues could have been improved but I'm not sure Adobe had that much interest in it. Honestly I think Adobe was more than happy to let Flash go. I don't think it brought that much revenue.
This explains a lot, too. Adobe did kinda just roll over, rather than address the fundamental concerns of the web community at large. Patches here and there, yes, but no deep restructuring.
Exactly. I was heavily into Flash/Air dev from 2007 to 2014 and I always got the impression the team was heavily understaffed. Specially in the later years.
Adobe abandoned AS4 (ActionScript/Flash Player Next) which IIRC would have solved the perf issues.
Adobe could have fixed that part.
I think thats very far from true. You can do amazing things in the browser these days. But we don’t have the same ecosystem we had during the flash days. And the reason for that is certainly the App Store, well partly along with steam, but not because Apple or Valve were some evil actors trying to destroy creativity. The reason is simply that these store provided an avenue for all the people on new grounds to monetize their games, so they stopped releasing them for free. Then the monetization became competitive and everyone started optimizing for engagement and adoption instead of optimizing for “the crowd online will get a kick out of this”.
While there WERE flash and Silverlight websites that weren't terrible (in fact, I seem to remember a few that were great, was Strong Bad flash?), the majority of things people think of when they think "flash" is stuff that would show up on newgrounds.com or a random video stuffed into a flash container.
So, I think both can be true, but most users' primary exposure to flash was low-quality software created as people's first game or similar. If I were to diagnose the issue retroactively, it would be that adobe flash had way too many foot guns (around memory management, I'd guess) for non-professional software engineers, which also happened to be the most significant users of flash on the WWW at least on the sites I frequented.
There are still zany web browser games out there as well as crazy video sites. Although I will probably miss Homestar Runner.
These three in my opinion bring a lot of people into coding. I guess the word programming would be too prestige to be used to describe them and may anger those in Silicon Valley. But for the 99% of people out there, all they wanted was their computer somehow do what they tell them to do without being shown all these functional / object oriented programming and which programming language to fight for etc. People were even happy just coding a plug-in for World of Warcraft using Lua.
I still think the whole industry for computing has moved in the wrong direction.
(Not really, but the joke wrote itself)
I do concur that it's sad that a lot of modern games and applications have gotten less hackable which has removed a door that a lot of old school programmers used to learn how to code.
Compare that to Processing, where even just using some images drawn in some other tool is more difficult than it should be. I don't think you can really even compare the two in terms of beginner productivity.
Making simple 2d games with unity is pretty easy. UE4/5 on the other hand is much harder to get started in, though it's also more customizable
I was a Flash developer back in the day.
Huge difference in learning curve.
VB6 contributed heavily to my early coding education because, in the early days, I was more interested in merely being able to make a Windows program with buttons, checkboxes, and all the fancy widgets that were available. Visual Basic hands that to you on a silver platter and did so quite well.
Excel let numerically oriented people create mini dashboards and interactive calculators.
I recently discovered Glide Apps [0], which takes an spreadsheet-first approach to no-code app development, and it's totally changed how I understand programming concepts. I know HTML/CSS and just enough PHP for WP sites, and not much else. But seeing how data in Google Sheets visually populated specific field containers in my app UI got me looking into the Fetch API for JS, which allows me to do the same thing using JSON.
[0] glideapps.com/
Also, Flash IDE is one of the best vector graphics editors.
Speaking of which, do you use Scratch or similar to teach your kids programming?
These were popular and mixed visual metaphors (a drawing program in Flashs case) with programming.
Of course many things exist today, but they are all niche.
Flash was "art first" and it showed in how creative many of the things created were.
Today websites are primarily created by programmers and everything is all the more boring for it.
When MS and Adobe turned off Flash for Windows, the MS Office flash plugins also stopped working. I had to set up a VM running windows 7 to be able to use them again. It is not as smooth as running powerpoint natively but it's good enough for classroom demonstrations.
However when students ask me to share the slides I have to tell them that while they are welcome to have it, about half of the stuff won't work properly because of a rich media plugin they are too young to have heard about. Besides, I don't want to teach them how to set up their own VM, and I doubt they are willing to go that far.
I have spent some time looking into this problem and have not found any third party tools that will allow embedded flash to work again. So much for the digital dark age.
https://www.statista.com/chart/3796/websites-using-flash/
Flash lost half of its marketshare down to 15% by 2014. I'd wager that most of the remaining sites were more niche or legacy and probably not seen by a 7 year old kid under general circumstances.
I'm curious if you've tried ruffle: https://github.com/ruffle-rs/ruffle
It will not work for exactly your problem (powerpoint plugin vs html5 webpage), but I've found most relatively simple flash programs run under it. If the embedded flash content you've got is relatively simple, you might be able to run it in a browser with ruffle.
At which point you could swap out the powerpoint presentation from embedding flash alone, to embedding flash + having a link to a webpage for modern powerpoint users, which wouldn't make for good presentations, but would be better than nothing for students reviewing it.
I've considered actually porting Ruffle to COM/OLE, which is how you're able to embed Flash in Powerpoint[0]. However, the current state of Rust COM bridging is... not great. I'm actually working on the opposite of that right now: embedding Flash Player itself in a host binary so I can stream automated input into it. I need this to track down those remaining event handler bugs I mentioned.
[0] Fun fact: Pretty much all ActiveX components are embeddable in Office, because ActiveX is just "WebOLE". Turns out Microsoft had solved the problem of "sticking apps in other apps and having scripting code access them" years prior to the Web being a thing.
It's heartening to hear that AS3 is being worked on, I'm sure you'll get the issues sorted.
I wonder when something like OLE will happen again, but with webassembly based apps ?
[1] Other browsers used NPAPI as the plugin system.
Edit: Oh you said it is an interactive flash. Screen recording won’t do it.
Case in point: Ruffle. Flash died, free software picked up the torch.
This doesn't just disable old software, but also current software - for example the Dropbox client doesn't work out of the box, and caffeine/caffeinate doesn't work either.
For example, in you grievance, is there a way to provide a Docker solution to run the working code under 'emulation'? Is there a way to compile an older version of the kernel to run these programs in the way you want? I don't know but my bet is that the answer is 'yes' to both of those.
My point is that this wouldn't even really be possible without a FOSS ecosystem. It requires labor from someone who cares enough to fix it but at least the avenue is open enough in the form of accessible standards and code. Under a proprietary standard or source these would need to be reverse engineered or, in maybe an extreme case, be illegal.
For a non-technical person who just wants to get their animations working again? Essentially impossible.
* FOSS now, while complex and intimidating, at least has the possibility of allowing for bug fixing and alteration (and having those alterations fold back into the main project) whereas proprietary software almost surely does not.
* The situation is not as dire as you suggest for many projects, especially ones that are self contained or smaller in scope. Arduino libraries can be understood and updated. There's a lot of scientific software that can have parts isolated, updated and fixed for someone knowledgeable enough.
Technical tasks like fixing headers, patching code or even using Git, are intimidating and difficult. Many projects are so complex now that on-ramps, even for highly technical users, are difficult. I don't see that changing anytime soon. FOSS at least offers people who can understand these technical tasks the possibility to take actionable response.
Convenience is absolutely something that should be prioritized but proprietary software and closed standards favor ease of use at the cost of freedom and, ultimately, longevity. My view is that FOSS is a necessary but insufficient element to a healthy ecosystem. FOSS, especially compared with proprietary software, is at least a step in the right direction.
I had to use an old 2009 iMac with a copy of Xcode 8 to migrate to Swift 3, then a 2016 MacBook Pro with Xcode 10 to migrate to Swift 4. Then I could finally perform the final migration and compile/deploy on my M1 Macbook Pro. It was ridiculous!
(I would absolutely assume that if it was officially still unstable that would have been documented somewhere ... I would absolutely not assume that I would have noticed)
However, the grandparent comment is talking about Java 1, which is before J2EE; the thing which would break code from that time is probably not going to be XML, but instead things like Applet support. There's a good chance that a Java 1 app is in fact an applet designed to run within a browser, and no longer runs fine on Java 17 since the Java plugin is no longer supported.
(it's a joke, I love you, Swift developers)
The only other language I’ve felt a serious affinity with was Objective-C. It’s the only language where I knew when I hit compile/run any errors were on me. Maybe it’s just having spent years in those ecosystems/languages and developing what some might call “mastery”, I never got surprised. I never felt like a master. People above me always knew so much more. I do remember writing a couple of thousand lines of Obj-c over two heavily caffeine fuelled days, hitting run for the first time and it just worked. Years on I still find “gotchas” in JS and CSS that I just never found in those languages. Maybe I thought about code more back then? Constant integration and hot reloads all the time, just make it all feel a bit different. Maybe I’m just set in my ways from spending a day typing out Spectrum machine code from the back of a magazine? Anyway… my favourite language of all time is Objective-c, that’s all I actually wanted to say. Rant over.
Swift came out in Sept. 2014 and v2 in 2015. Just knowing that the language was 1.5 years old would bring long-term compatibility doubts to mind.
Rightly or wrongly Apple very much decided Swift should take a different approach to backward compatibility.
That wasn't the point I was trying to make in that particular comment though.
Swift is the edge case on this one. Not the norm.
That's just Apple being Apple unfortunately.
In pretty much any other programming language, upgrading to a new build enviroment / ide / compiler does not require a staged upgrade. I can take my android studio project from version 2.x and open them in the latest ide without having to step through intermediate versions. Of course I expect a sea of red, but the ability to migrate directly is present, and it's not in xcode.
edit: And to make things worse, you cannot just download an older version of xcode because it might not run on our newest os/mac. SMH. Planned obsolescence FTW!
If this game were a native app from that era, you'd think nothing of whipping out a Windows XP VM and installing an era-appropriate toolchain in it.
And really, the same applies not only for native executables, but to any proprietary / non-standards-based format from a previous era that's since been left to the wayside. Want to use a website that embeds a Java applet? You'd better (effectively) time-travel to 2005.
IMHO, at this point, a Flash game (for which the source code is not available) should really be "modernized" similarly to the way the Internet Archive makes old Windows and Mac software available — by wrapping them up into their own little standalone VM images. Like this: https://archive.org/details/chips_challenge_windows_3.x
Also, even living software calls its compatibility somewhere. Windows programs from 1995 do not work on modern systems. Mostly because many of them still had 16-bit components at that point (e.g. a 16-bit installer), and 64-bit Windows doesn't run 16-bit executables.
I understand that big surface areas are a thing, but there's just loads of content that exists as Flash and is fine.
An extra layer here, Flash CS3 Professional is better as a quick iterating game tool than basically everything out there for people nowadays (Game Maker Studio is up there but still...). I think that making _new_ content in Flash is justifiable except for the whole "can't get it to run anywhere" issue.
Well, yeah; and there's loads of Win95 games that run fine under WINE. But if you want to guarantee that an arbitrary Win95 game will work, without knowing anything about it (as is the case with a content-blind bulk archivist like the Internet Archive), then you'd better wrap it in a real Win95 VM, rather than assuming it's one of the easy cases.
In the case of SWF files, though, it's not that the files themselves have heavy/weird requirements; it's that their abstract machine / runtime itself makes some extremely dated assumptions about a wide-ranging set of platform APIs.
It's a bit like how RPG Maker 95 games are hard to run on Windows 10. To run arbitrary games, you could in theory "just" make a 100%-coverage reimplementation of the RPG Maker 95 runtime, build it for Windows 10, and it would run just fine. But as it stands, the only 100%-coverage implementation of said runtime is RPG Maker 95 itself; and so the only good way to run RM95 games, is in a Windows 9x VM, where all the particular APIs RM95 is looking for exist.
> An extra layer here, Flash CS3 Professional is better as a quick iterating game tool than basically everything out there for people nowadays
You know that Adobe Animate (nee Flash Professional) still exists, right? And that you can still make games in it, not just animations? It just exports to HTML5 now, rather than to SWF.
Yeah sure you can dig through lots of specialized software and hardware to do software museum "curation", if you will, but this isn't a case of emulatimg DOS games or what not - those work.
The sucessor to flash's animation software, well it doesn't exist, not even with all html's fancy css and js frameworks. And I say that knowing there is some impressive stuff done in JS.
It's a bit like if we all decided, nope, C++ is illegal now, gotta do everything in rust, except now decades of work just can't be compiled anymore...
I can still go out and compile old c programs on really old operating systems even on modern systems - these are working programs which simply no longer function, and the replacement efforts have no major steam behind them.
Arguably for good reason, the old stuff did really suck and HTML was better for a bit (it sucks again already), but these are perfectly good pieces of art that just no longer function.
I mean sure, or I could just run whatever it is on my current computer? I know Visual Basic 6 was still, for example, able to be run on at least Windows 7. (I haven't tried it on Windows 10.)
A flash VM running in safe WebAssembly sounds like an awesome idea for preserving a lot of older web content.
fcsh-wrap -static-link-runtime-shared-libraries -benchmark=false -debug=false -o tmp.swf -source-path=src -library-path+=lib/as3-signals-v0.8.swc -- src/core/Main.as
It almost builds for me, but I think since my Flash projects were older than yours my copy of the Flex SDK might be too old.Yeah, I'm being hopeful from a complete lack of expertise here. But it'd still be -really- cool if it worked out.
For what it's worth, I built it with 4.6.0 of the Flex SDK, which Adobe is still hosting: https://fpdownload.adobe.com/pub/flex/sdk/builds/flex4.6/fle...
So yeah, problem solved, I guess?
I'll see if I can give this a try this evening
I'd advise anyone wanting to scratch the Flash itch to see if it is a feasible thing. Won't be straightforward for all applications, but I found it almost cathartic.
Haxe is a gem of a hidden language. It's just too bad the community isn't gigantic and the tooling support (IDE) is rather lackluster. I've become quite fond of it (especially after working with it nonstop for months in my free time). I recommend everyone check it out!
I may give this a shot when I have some spare time.
If your wifi card has proprietary firmware, you can replace the card eventually. If the language compiles is proprietary, it's only a matter of time.
If flash had been open source, I'm sure there's be some small group of passionate devs keeping it alive. But as it is, this is simply not possible.
Let this be a warning if future choices.
The majority of the sites in the museum I captured using Charles proxy back in 2011. I have also included a few sites that Internet Archive had captured, but weren't functioning properly in the Wayback Machine due to either scripting or Flash requirements.
The changes vary. There are a number of instances of direct linking to content instead of using relative paths, which can usually be fixed pretty easily using FFDEC's in-place Action Script editor. Toward the last 8 or so years these sites were accessible, Rockstar started to remove certain trailers - likely due to music licensing. For these I've had to dig into Internet Archive and see if I can find the original SWF files before changes were made. If I cannot, I then decompile sites back into Flash projects and use an old copy of Creative Suite 6 I have access to in order to restore certain buttons and elements.
Ruffle still needs work but definitely has been improving. The project has been mainly focused on AS1&2 and has little/not-yet-working AS3 support. Sites like Vice City mostly work, but the background colors are off and sounds like the radio won't stop playing once started. Sites that Rockstar developed onward from 2006 like Liberty City Stories are a lot more broken at the moment unfortunately.
Before that, Java applets failed and after that, Silverlight failed. 25 years ago I was visually programming desktop apps in Delphi. Drag and drop, advanced layout mechanisms, rich library of standardized UI controls, advanced data binding, you name it.
It's quite ridiculous how we anti-progressed since then. Now we're back to text files and terminals. Weird frameworks to fill the gaps of the web but none really have batteries included. There's no language library in JS, nor is there a UI library. You all have to glue it together and hope it works. Not even the development flow is standardized, it's multiple tools stitched together each of which having 7,000 dependencies. Knowledge is also not portable, nobody is able to maintain that 7 year old Angular project and newbies have no idea where to start.
It adds up to the #1 issue in our industry: low productivity. We've positioned ourselves into a garbage development ecosystem that is very hard to understand whilst outputting little, both in quantity and quality.
This issue is much bigger than poor tools. These poor tools means billions are wasted on an ongoing basis reinventing the exact same thing over and over. It means knowledge is not sticky, so there's a huge cost in re-learning things. It means a lot of creative people are locked out of development, as it's too intimidating to them.
"See, this tree-shaken bundle gets loaded and then rehydrates the server response, after which state is in the store and you just work on your component but be mindful of its side effects and dependencies as your re-render has to be a pure function, kind of like the reducers in your store, which are similar to actions but not really. Told you it was easy."
If you can’t, anything you develop will never really belong to you.
It’s written in Rust (don’t shoot the messenger) and was able to play some flash content I had produced around 1999…
Ok I’m going to go crawl back under my rock.
And it boots to the title screen, but I guess there is some sort of check inside the SWF to make sure it is running inside the right domain, because then it tries to redirect the browser back to the main URL and won't load the main avatar creation screen. Bummer. (I downloaded Adobe's Flash Projector and the behavior is the same)
EDIT: I installed the Chrome browser extension instead and it booted up fine. Some rendering issues to do with stroke widths that make it reasonably unusable, but it worked and when you click to download you get the actual proper file since it is rendered using .NET on the back end.
The main screen would loaded but when clicked wouldn’t resolve the sub-modules correctly but I was able to just play the sub-modules and individually and see the old content in all its cheesy glory.
> AVM2 is ActionScript 3, which was introduced with Flash Player 9 (June 2006). After the release of Flash Professional CC (2013), authors are required to use ActionScript 3 - making any movie made after that date very likely to fall under this category.
> Ruffle is still working on the foundational support for AVM 2, and does not yet support any content that requires it. A warning will be placed in the log when you attempt to play AVM 2 content, for this reason. We do plan on supporting this soon!
LOL, I think the anti-rust stuff is more a backlash to those overzealous rustaceans who demand mature C or C++ projects be re-written in rust so they can be 'safe'.
I think new software in rust that does useful stuff is cool as :)
It's still actively being supported (and developed?) after Adobe transferred it to HARMAN.
"The SDK is free for personal use and for low-income companies."
Update: upon further digging I found a link to a different company developing "CheerpX for Flash", a WASM runtime that runs SWFs in the browser. Also nonfree, no pricing info, but they seem to be generous to nonprofits and education.
There's likely some breaking changes in the past decade of Flex SDK. Try to use a VM or Container with something like Ubuntu 12.04 or Debian old-stable and use old versions of the Flex SDK, this will give you a higher chance to compile successfully.
Actually not that much, ruffle compatibility is quite good these days.
It might be something else. I replayed Nitrome's Mutiny a while back, and though BlueMaxima's Flashpoint could get me around the site lock, whenever an enemy used the anchor weapon, the game would lock up for about half a minute, with the anchor at the top of the screen but still waiting to fall. This never happened back in the day.
I bring this up because Flashpoint comes with a few dozen different versions of Flash, and none of them fixed the bug. So it's probably not the Flash player version. Maybe it's something in the OS, I dunno.
EDIT: Oh, you were saying Flashpoint got around some initial domain check. Perhaps the developer added multiple, one obvious, loud one upfront and a few more later in the game.
How many years did Adobe have to make those security fixes, though? And yet Flash was probably the #1 security threat for people using a web browser.
I agree that Jobs' reasons for wanting to kill Flash were not particularly altruistic, but it either needed to die, or Adobe should have completely open-sourced it and/or documented everything so people could write compatible (and open) compilers and runtimes.
Depending on proprietary software for things you want to keep runnable for years and years is just a bad idea. If Jobs hadn't been the catalyst, Flash would have died for some other reason, eventually. I can understand that OP perhaps didn't see that at the time (I'm sure I've made the same mistake myself long ago), but that would seem to be inevitable.
I recall the sole dev at the time, complaining that he codebase was a spaghetti mess of undocumented garbage.
So I think Jobs was right here. Anyhow, Adobe is famous for dead end, junky stuff. Their early days were golden, but they rested on old IP, milking it.
EG, flash, cold fusion, their licensing garbage.
These days they do all sorts of weird stuff, and due to their name even banks are silly enough to trust their fraud detection business.
First time I've ever pitied banks.
I can't find it, but back when flash was being killed I recall seeing an analysis of Flash, the distilled conclusion of which was that the sandbox model was so fundamentally flawed that it would not be possible to fix it without breaking compatibility with basically all existing flash content.
And also given the decline of Flash in favor of HTML5+CSS+JS it was unjustifiable to spend the effort doing so.
Flash does have it's own bizzaro-world idea of CORS, though, which can cause issues with web services not aware of it. Adobe also went through a lot of work in AS3 to support "opaque" SWF content, i.e. being able to hotlink other domains' movies in the same way browsers can hotlink images. It is a concept that makes absolutely no sense in a post-Spectre world. But a lot of movies just outright don't need those features - it's definitely not a "rewrite all Flash Player content" situation.
Jobs was mostly justified in not shipping Flash as a Safari plug-in on iOS. Adobe had terminal "not getting it" syndrome, and their attempts at shipping the plugin on Android were... actually pretty bad.
The thing Jobs overstepped on was trying to ban all third party development tools; something he backed off on after a few months when it was clear the FTC was going to sue. Believe it or not you probably have played Flash games on your iPhone and not even known it. That's why I say Jobs didn't kill Flash; because the platform actually remained relevant in game development for a few years, up until Adobe pulled the whole "premium features" bullshit which really pushed people away from Flash and to Unity.
I had stopped being active in Flash development by then, what is this about?
- Domain Memory: WASM, but from the alternate branch of history where ECMAScript 4th Edition became a web standard.
- Stage3D: WebGL, but inside Flash Player
Adobe pooped their pants and decided that people cross-compiling to Flash Player should have to pay for it. So they decided that you couldn't use both features unless you agreed to pay a 10% revshare to Adobe; they would be "premium features" now. This would be enforced with DRM in the Player that checked for a digital signature in your SWF authorizing the use of premium features.
This pissed off a lot of people who were still developing Flash games and, ironically, pushed them to Unity or HTML5 (or both). Adobe saw the writing on the wall and killed premium feature enforcement, but the damage was already done. Bonus points: apparently they planned to pay for ActionScript 4.0 with the revshare money they now weren't getting, and just decided to entirely shitcan AS4 out of spite.
I never heard of AS4 before! That's so cool. I found a specification and whitepaper here https://github.com/adobe-research/ActionScript4
>HTML5/JavaScript is here to stay. One cannot not serve the Web! Here it is our task to provide a superior alternative where HTML5/JavaScript is bound to lack.
It was supposed to be a compiled language, in order to solve performance and battery issues on mobile devices.
Being able to say "we fixed one of your biggest complaints / reasons for trying to kill us" sounds like it would have been pretty good marketing, and Adobe with their budget seems like they could have afforded that easily. (I don't know how much it costs to develop a new programming language, but I know it has often been done by a single person in their spare time!)
It sounds like they also had plans to eventually bring AS to the server-side (made largely practical by the same advancements benefiting the client). (Perhaps they could have learned a thing or two from Haxe, with its "compile everywhere" and CPP transpilation.)
Alas! Now to see if any curious bystanders have bothered to implement it... seems not. (I guess that's not too surprising, we're only halfway* done with AS2/3 implementations as it is!)
* https://github.com/ruffle-rs/ruffle/wiki/Roadmap#milestones
The most obvious solution - recompiling ActionScript bytecode or source for the web - would be very difficult, for a number of reasons. While AS2 and AS3 are both ECMAScript derivatives, they differ substantially from the JavaScript we actually ship in browsers. Even basic property look-up deviates significantly from regular JavaScript, either because AS2 has too many compatibility hacks, or because AS3 has too many ES4 features that never actually made into browsers.
If you wanted ActionScript to work, you would need to ship your own AVM implementations, which in 2013 would not be performant on Mobile Safari[0]. Google and Mozilla both did that anyway, shipping interpreters for AVM1 and AVM2 code. For Google's intended use case of porting ads to HTML5, this was fine. Mozilla would eventually abandon Shumway, however, citing performance problems. It was very much ahead-of-its-time. And Google's intended use case stopped making sense as advertisers just used HTML5 tools anyway, so that was shuttered too.
I'm not entirely sure what they meant by AS4 being a compiled language, though. All ActionScript is compiled into bytecodes and can be further recompiled into optimized native code (though AS2 never got this treatment). The language spec PDF seems to hint at ahead-of-time compilation, which absolutely would help iOS, but only to say that such compiled code needs to work the same as the interpreter. Whether that was actually enabled by new language semantics or just intended to be handled with profiling an instrumented AVM4 is something I would like to know.
Implementing AS4 in Ruffle would not be practical without a compiler and player implementation, and as far as I can tell those weren't ever publicly released. The standard library of a language and how events are pumped into it's UI framework are just as important, if not moreso, than how the language describes it's code.
[0] asm.js was a thing in 2013, but it was a Mozilla-specific technology Safari never implemented. WASM would not be standardized until 2017, with Safari support launching that year. At that point Flash Player was already on life support.
I have a bunch of old Flash games from back in HS. Been watching Ruffle for a while as well since I've been wanting to make a page to preserve them but AS3 functionality just isn't there yet...
Flash isn't terrible. Flash as a browser plugin was terrible and insecure indeed. Flash was no more terrible than Java or .net on the desktop as a multimedia app platform. In fact it made it easy not only to create interactive "experiences", games, but also artist authoring tools. Alchemy allowed to incorporate C/++ code into Flash, and Flash also had its own shader editor for effects. Adobe threw the baby with the bath water.
Actually it has a good use case for videos and animation. Flash animation uses vector graphics, saving huge amounts of space for basic animations and allowing the animation to scale to any screen size without degrading resolution. Part of the reason Flash took off on the web was due to small size (useful when network throughput was more limited).
fairly sure it is the old Flash with a new name and new ways to publish your stuff.