I don't think they could even open source it, with all the other companies' copyright work they shoved into it, like dolby
I don't think they could even open source it, with all the other companies' copyright work they shoved into it, like dolby
The story starts with Adobe. They proudly announce AS4, along with an "FP Next" intended to run it. Then they also mention new revshare rules mandated on anyone cross-compiling 3D game engines to Flash Player. This is specifically to keep Unity off the Flash platform. This, predictably, causes huge backlash from Flash developers - even those who don't care about cross-compilation. So they kill the revshare... as well as any plans to fix Flash Player's problems.
This all happened a year after Steve Jobs posted "Thoughts on Flash" and tried to ban Adobe AIR apps - and all other third-party development tools in the process[0]. We'd learn way later on that preceding this, Apple had begged Adobe to ship them a Flash Player build that would actually work on iPhones, and their attempts were... anemic[1].
[0] This was only stopped because the Obama administration threatened an antitrust lawsuit.
[1] While the iOS ports of Flash Player haven't been publicly released, they did ship NPAPI Flash plugins on Android, which were just as bad as Jobs had claimed. Actually they probably were the same codebase given that jailbreakers were able to get them to work on Safari.
And vector rendering on GPUs is a pain to do, even more so with Flash Player's rendering quirks. Adobe's official solution to hardware rendering on Flash was Starling Framework, which rendered all your assets to bitmap textures and then gave you a DisplayObject-compatible API that triggered Stage3D renders under the hood.
In Ruffle we use a tesselation library to render on GPU. This preserves vector scalability but it has other issues. Most movies work fine with it, but we have to waste time tessellating[0] assets, and in certain contrived cases we tesselate things wrong and movies look polygonal.
[0] Which we hid behind existing Flash preloaders. We don't even support progressive download yet! But the alternative was Homestuck hanging your browser for minutes on end.
To be fair, on the single 100 mbit link the site used to be on, for new things being posted, that would be historically accurate...
Oh and yes, the opening bars of "Doctor" are permanently burned into my head now.
The Flash renderer was also state-of-the-art for the moment, with really awesome anti-aliasing and blending. All while using just fixed-point integer arithmetic.
you don't just buy someone's entire workflow and then not fix any of it. not at least, if you intend for people to believe you when you say you're the future.
I know that Adobe shared the Flash Player source code with Apple, but heard Apple assigned an intern to try porting it to iPhone. The Adobe developer working with Apple told me the ported code Apple sent back to Adobe didn’t even compile, so we don’t know if they even tested it on a real iPhone. We jokingly called the iPhone port “Project Boomerang” because the code that came back was basically the same that we sent them. :)
The Flash Player’s source code was ugly, but you have to remember that its roots trace back before Macromedia to SmartSketch, a vector drawing application for the PenPoint OS in the early 1990s. The core rendering and scripting code has since been ported and squeezed into new platforms and applications. And then the dot com boom happened. The development team grew to about a hundred developers and no one person understood the entire code base. Code was copy/pasted freely for fear of introducing regressions that would break existing Flash content.
Multiple rewrites and grand new engines that would live alongside the legacy engine were attempted but failed due to backwards compatibility, the second system effect, and product management’s pressure for new features.
To make matters more challenging, Adobe was losing interest in funding Flash development because revenue didn’t scale with Flash Player usage, only with sales of the Flash authoring tool to a small audience of Flash content creators. That’s when rev share schemes for 3D APIs, DRM, and asm.js-like C++ cross compilation (Alchemy and CrossBridge) were hatched.
Apple throwing "port Flash Player and HW accelerate it" to an intern also tracks. Especially if this was early iPhone development where basically half the company was being press-ganged into giving Steve Jobs an iPhone demo that wouldn't crash on stage.
Everything you said about Adobe management also tracks. I'm reminded about Jobs' quote about Xerox being filled with copier-heads[1].
Also...
>second system effect
Are you telling me that there was a Flash Player equivalent of Mac OS Copland[2]'s development at some point?
[0] Said thread also revealed that Jobs felt snubbed from not being able to have Adobe's CEO on speed dial
[1] https://www.youtube.com/watch?v=b7aUJyJbJMw
[2] https://en.wikipedia.org/wiki/Copland_(operating_system)
Yes, though these projects focused on “sidecar” JITs that would live alongside the legacy ActionScript VM inside the same Flash Player, not replacing the sacred Flash renderer.
A successful example was AVM2, the AS3 VM (open sourced in partnership with Mozilla as Tamarin [1]). A few years before that, a team had evaluated whether the .NET JIT (or a cleanroom implementation developed in-house) was technically and legally an option.
Much later, long after I had left, I heard from friends still at Adobe that somehow JVM developers from Oracle had joined the Flash team in the mid-2010s and were eager to attempt yet another VM, based on their JVM experience. But by this time, Adobe no longer wanted to invest in modernizing the Flash platform when it could simply milk the cash cow.
I know Adobe will never open source the final Flash Player code (because of third-party code licenses and there’s nothing for Adobe to gain), but I wish they had at least open sourced their internal test suite so open source players could improve their Flash compatibility.
all this talk about security and flash's being bad at it, and you forget what flash really was for. It wasn't for blaring ads (you can do that without flash) and it wasn't for secure logins anyone who did use it for those was a money maker or a madman.
No matter who owned it, Flash was a security nightmare throughout its existence, just as ActiveX and Java applets were.
The key thing is, these things were created in a time when there were far less bad actors on the Internet - not just because finding an actually working version of IDA was a challenge in itself but also because the financial aspect motivating bad actors these days (i.e. botnets, crypto malware) just wasn't existing or at least was sorta confined to nation-state actors. Plugin vendors could get away with an awful lot of utter bullshit back in the early '00s.
Doesn't negate what you said just actually trying to think of some positive rich media app technologies.
Collecting data from a form sent via POST to be processed server side?