I'm convinced it's impossible to implement the BT spec without MANY of these kinds of bugs popping up.
Apple mercy-killed Adobe Flash, we should be asking they do the same to Bluetooth. I'm sick of living in a reality where no one thinks to make something better. It has to be possible.
> Apple mercy-killed Adobe Flash, we should be asking they do the same to Bluetooth.
They won't, because it turns out Bluetooth is the best thing we have at "discover nearby devices". Guess how Apple TV/screen sharing detection, iPhone hotspot detection and configuration, AirDrop and a whole host of other features work without communicating via some cloud mothership? They are all using Bluetooth to do detection and negotiation to a high-bandwidth link!
Amongst widespread radio communication mechanisms, there are only NFC, Bluetooth and WiFi. NFC is sometimes used to provision wifi passwords, but it's short-range to the tune of a few cm tops. WiFi has discovery, but nothing in the protocol to make sure initial conversations cannot be eavesdropped, and low-power wifi stacks are hard to do, in contrast to Bluetooth with BTLE.
That's what I'm saying. Adobe ends BT support in all their devices and software stacks and switches to "Appletooth," which they promise to open up and then 5 years later actually do it.
Appletooth being a from-scratch all-new, cleanly-designed protocol that makes actual sense and is easy to implement by vendors without inherent security flaws.
I won't lie, it would be a horrifically painful transition. But it would be worth it. Apple should have some courage when it's actually called for (...not killing hardware ports, which no consumer was asking for).
I've never used iPhones and have stuck by Google Pixel. I still feel all of the above in my heart. Apple's the only one who can possibly fulfill my dream of Bluetooth's bitter end.
Adobe Animate (née Flash) still exists and exports HTML5-ready MP4s now. Which, as an actual user of Macromedia Flash and dabbler in Newgrounds uploads, is a much better situation. Flash the plugin sucked shit and everyone knew it, including Tom Fulp.
Mercy killed? Flash was great. There were so many inventive games and animations in that era. Apple didn’t mercy kill anything - they just removed a threat to their walled garden ecosystem using their anticompetitive position, but dressed it up as a security issue.
I’m amazed by the retconning of Flash into a great system.
I agree that some of the content produced in that era was great and it was nice to have tools available, but using Flash and doing the whole browser plugin thing was not great at all.
It’s actually great now that we have actual standards compliant ways of doing animations and other things in the browser without restricting it to one company’s little domain that must be used as a plugin for browsers.
Adobe said it was only because of mean old Apple that they couldn’t get it to run on the original iPhone. When it finally came to Android around 2010, it barely ran on a 1Ghz Android phone with 1GB of RAM.
Mind you that the first iPhone cake with 128MB RAM with a 400Mhz processor.
An iPhone with the theoretical specs didn’t come out until 2011.
Also see the first “iPad Killer” the Motorola Xoom’s marquee feature was suppose to be that it could run Flash. But Adobe was late releasing the Xoom in the unenviable problem of that you couldn’t view its home page on the device.
Nah, Flash was awful. Terrible performance on low end devices. Unforgivably terrible for web video. Nightmare on Linux. Nightmare in enterprise environments.
There were cool games, but there still are cool games. And the indie/hacker/homebrew gaming ecosystems are bigger, richer, and more accessible than ever (due in no small part to the web, both as a gaming platform and for learning/community).
This take doesn’t make sense unless you’re comparing Flash to current technology, rather than the tech of its time. It’s like saying CD players were awful: sure they’re awful NOW, but they had a time and a place when they were the coolest thing around.
Similarly, the only reason Flash had “bad performance” on low end devices is because people were using it to do stuff that web tech could not do. It took over a decade for web tech to catch up, and 20 years later we still don’t have tooling that’s as good as Flash was (other than Adobe Animate itself).
Calling it “terrible for video” is completely backwards! Flash became the standard for video on the web for years because everything else was terrible and Flash was the only thing that worked. There’s a reason that YouTube used Flash to play videos for the first ten years.
It’s one of the topics I feel I’m too biased since I spend 10 years as a flash developer. The requests for widgets and or small applications we got where simply impossible to write in a frontend only fashion at the time. And a lot of my peers moved on to work on HTML5 which was pushed hard as the successor at the time. A lot felt like a step back. I moved to native iOS and worked on games in cocoa 2D. I remember that I thought more than once: “This was already solved in flash”. But I think in the end it’s a good thing that we don’t have or need the flash player anymore. I wish only we could have gotten a flash to wasm/webgl compiler or flash to js transpiler.
ActionScript 3 was great and leagues ahead of JavaScript at the time.
Yup, this was my career path as well. I worked professionally as a Flash developer for many years but gradually that became more of an iOS developer role and I made games using Cocos2D etc.
No, I’m talking about at the time. CD players were great at the time, so I don’t really see your analogy. Maybe the closest thing would be those brittle CD jewel cases, those always sucked!
If there's ever a project for an alternative OSS Flash authoring tool, something intended to be as accessible as Flash 5 or so, I'd love to contribute somehow
As someone who did a bunch of work on Ruffle a while back, "mercy kill" is almost the correct word. There's about a decade it spent rotting before the actual kill, and Apple's not the one who fired the final shot. I've heard stories from both the Apple and Adobe side on this, but basically both companies wanted Flash on iOS and neither of them were capable of actually shipping a good version of it.
Apple begged Adobe to ship a working Flash mobile build at least four times and each time they rejected it for all sorts of various UX or performance issues. At one point Apple asked for and was delivered Flash Player source code, which they reportedly couldn't get to compile. Adobe tried to brand Flash as an open standard, and then went over Apple's head by just shipping an AIR runtime that could be packaged into an IPA and submitted to Apple. Jobs then wrote the infamous "Thoughts on Flash" letter, which was really there to justify going scorched-earth and banning all third-party development tools. This only lasted for about three months before the Obama DOJ threatened to sue[0].
Also, Steve Jobs was probably pissed off that he couldn't get the CEO of Adobe on speed-dial. At that point in time everyone involved with shipping iPhone software was in his contacts and in regular contact with him. Google logo looks weird on the phone screen? Have Jobs call Page and get it fixed in 10 minutes.
As it stood after that moment, Flash was a viable development platform for iPhone apps and remained so for many years. This is entirely separate from its use in the browser. Practically speaking, you have probably played plenty of Flash games on iOS without even knowing it, because all the hard work of building touch-friendly UX and a performant UI was shunted over to the developers of individual games rather than trying to make, say, the core Flash rendering model GPU capable[1].
Adobe then shipped Flash Player for Android to huge fanfare, and it sucked just as hard as it did on Apple's dev iPhones and was unceremoniously canned a year later.
At this point it was obvious Flash Player needed a rewrite, even within Adobe, so they announced "FP Next" along with an AS4 language for new movies to run in. Except the Adobe execs were angry about the cost so they tried to shake down their customers for the funds. They wanted any cross-compiled 3D engine code to have to pay a revshare to Adobe. Everyone jumped ship to Unity, so Adobe canned the revshare requirement... and FP Next/AS4, the thing that was supposed to modernize Flash's aging codebase.
And then right after Adobe starts disinvesting from Flash, a bunch of CVEs land and all the browser vendors pushed hard to actually, once and for all, excise plugins from the browser. That was the actual mercy kill, but it was preceded by almost a decade in which all the people who knew how Flash actually worked didn't have the budget to fix it, and all the people who wanted it fixed didn't have the expertise to do it.
[0] For the record, Obama was the guy who saw Zuckerberg illegally buying Instagram to keep people from moving off of Facebook and said "sure thing, wave it through".
[1] There's an AS3 project called Starling that gives you hardware rendering by pre-rendering a bunch of assets in advance into bitmaps, which kind of betrays the whole point of Flash. But I also can't imagine Adobe doing it any other way as the Flash renderer was both highly optimized and bespoke.
Flash Player, like most proprietary software, is not Adobe's to give away. There's lots of licensed code owned by companies that sold it to Adobe (or Macromedia) and having a functioning FP runtime would require getting those companies to also license the same code. Remember: proprietary software cares a lot less about licensing arrangements[0] than we do. Everything they do wrong can be papered over with money and licensing agreements, because the entire point of copyright is to make money moves out of people's wallets in a way that improves the health of the state. The FOSS world rejects this principle, so we have to build everything from scratch to get a clean copyright pedigree.
If you're wondering what would actually block a FOSS release of the Flash Player runtime, here you go:
- Sorenson Spark, a half-finished H.263 implementation.
- On2 VP6
- Likewise, their H.264 or MP3 decoders, which were almost certainly third-party libraries as well.
- The "advanced text rendering engine" added in SWFv8 to replace legacy font rendering, which I know was licensed but I forgot which company.
- Adobe DRM
The media codecs would be replaceable with any number of FOSS implementations. I've[1] personally written a clean-room decoder for Sorenson-flavor H.263 in Rust, and the APIs for these libraries tend to be pretty simple and easy to wire up. Font rendering would potentially be more invasive to the codebase. And DRM is basically high-grade radioactive waste to FOSS projects. The main problem is that this wouldn't be "just compile Flash from source" anymore, you'd be making an "OpenFlash" fork with at least some compatibility breaks involved.
And to be clear, Adobe actually had some interest in opening Flash Player. They released a bunch of technical specifications for the SWF format - albeit, hilariously inadequate and inaccurate ones. AS3 in particular was supposed to be a web standard, in the form of ES4, or "JavaScript 2.0". Adobe actually released their AVM2 implementation, avmplus, specifically with the goal of it replacing SpiderMonkey in Firefox. This never worked out[2], but they kept updating the avmplus GitHub right up until the death of Flash.
The underlying problem with both "opening up Flash Player" and "porting Flash to iPhone" is that Adobe management was not terribly interested in doing things that did not have a direct connection to bottom-line revenue. If they were willing to open Flash, they would have also invested into their platform instead of trying to find a way to bilk money out of people cross-compiling Unity to Flash.
I think the best goodwill move Adobe could make now, in 2025, would be to specifically release the renderer component of Flash. They own it completely, the copyright pedigree goes all the way back to Jonathan Gay, and it does a lot of specific things that no other SWF runtime implementation gets quite right. It would be an absolutely amazing object of study.
[1] To be clear, several other interested Ruffle contributors helped me actually get it decoding video (especially some broken files) and doing so efficiently.
[2] I'm not a fan of him but I hear Brendan Eich stalks these forums. He probably has better insights on the backlash to ES4 than I do.
By stitching together an inconsistent hodgepodge of sometimes overlapping languages, technologies and APIs. On the user-side, I'm glad I don't need a proprietary player for such things any longer, but I sure hate doing anything remotely touching Web, in particular for the kind of highly interactive experiences Flash was good at.
In truth, the Web has eclipsed Flash, the player, but not the product.
Apple mercy-killed Adobe Flash, we should be asking they do the same to Bluetooth. I'm sick of living in a reality where no one thinks to make something better. It has to be possible.