In the 2000's, Flash was gaining a ton of popularity on the web, and Macromedia was recently bought by Adobe. They had just developed a new programming language, ActionScript, which was dynamic and object-oriented and offered an interactive developer playground. For early web developers like me, it was seductive and simple and more powerful than other state-of-the-art web technologies.
But, developers across the world, myself included, wondered: would ActionScript and Flash become open source? That was the one thing holding it back from broad adoption and improvement by the community. The web wouldn't stand for a closed standard.
My view is that openness always wins in the developer community in the long run.
Flash is now relegated to a "second-choice" technology for web applications, mainly used for some specialized rich internet apps, games, and backwards-compatible video players. I personally hope that Apple learns from this lesson and deviates from their history by making Swift free and open source software. It's not only better for the developer community -- it's also better for Apple.
Open standards did not beat Flash. A bigger proprietary platform bully sent Flash to it's doom - Apple's iOS. Adobe's Flash was vulnerable because it had to seek Apple's blessing to be part of Apple's platform, and they were spurned.
This is the lesson of being a sharecropper - even a massive proprietary-source company, Adobe, are powerless when the platform owner enforces it's control.
Yes, open standards win in the long run, after Apple have profited significantly from the closed approach they are taking now. At which point it's a meaningless victory.
The point of the article is, be aware you are just a sharecropper, and working on Apple's lands for as long as it's in Apple's interest. And Apple owes you nothing for all your hard efforts, it will change the environment for it's own corporate interests. And you, the developer, are mere insignificant collateral damage. Remember that Steve Jobs killed Flash. And there was nothing Adobe could do to avoid or mitigate it.
Current iOS developers have already accepted this, willingly or unknowingly. It's the new folk who are attracted by the new shiny thing, need to be aware of the consequences of working on an Apple controlled platform.
Both WebOS and Android had every intention of using Flash as a feature to differentiate themselves from Apple. If it were a matter of sheer marketshare, that should have been enough--Android has more customers than iOS.
But Adobe could never deliver a Flash runtime with acceptable performance, and even Android does not ship it anymore. Apple did not force them to drop it; it just wasn't good enough.
- move Java to a more browser friendly position
- make Flash lighter, faster and easier to integrate on mobile
These were for feature phones, and any of the above were realistic and plausible (I did actual projects using each of the above)
Flash got killed because it was too mouse centric and there would be no bridge between mobile and desktop, thus denying any network effect fom the desktop. The API was good enough, there was a few open source compilers and the runtime was OK. Compared to native Java it was actually nice to use.
But when you see the iPhone or the android phones, there is no compelling reason to do a lightweight Flash app when the same can be done in JS for more or less the same effort (and the js would work everywhere). Access to native functions could have been a selling point, but even that, going the full native route would be more sensible.
TLDR;for me Flash was killed by js coming to mobile, more than anything else
I dont think one can compare AS3 and Swift. In fact Microsoft had it's own implementation of ES4, Jscript.net.
> Flash is now relegated to a "second-choice" technology for web applications,
"Thanks to" Steve Jobs,that didnt want anyhting on his plateform he couldnt control.
IOs is a closed ecosystem,IOs has more developpers and apps than ever.There is nothing to learn here but the fact that they control their plateform,from end 2 end,and users keep on coming.
- It was based upon ECMAScript 4.
- The ActionScript code was open source, and the actual reference code for ECMAScript 4.
- The JIT runtime of ActionScript 3 was open sourced (Tamarin) and "donated" to Mozilla to use as the basis for a faster JS runtime.
Also, your comparison of Flash with Apple's Cocoa/OS platform frankly makes no sense. The situation is vastly different. Swift is in exactly the same position as Objective-C. It's under no greater threat to disappear than Objective-C is.
Regardless the openness of obj-c and swift, the iPhone runtime is still close-sourced.
And you can write your own swift compiler in LLVM, even if apple don't opensource it.
At one point or another your software needs to run on a piece of hardware. At least some of it won't be open, because as IBM learned in the 80s, you end up giving your hard earned lunch to your competitors.