Hacker News new | comments | show | ask | jobs | submit login

Will Swift be open source? That's the core question.

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.

I wasn't so sure what Adobe's plans were -- so I abandoned ship. Many others did, too. Of course, the rest is history: HTML5 technologies and JavaScript -- aided by canvas/svg/webgl and other standards -- have won the day.

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.




Flash dominated the Web more than Internet Explorer (even at IE's pinnacle). Somewhere in the mid 90% of visitors had Flash installed at it's peak.

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. https://www.tbray.org/ongoing/When/200x/2003/07/12/WebsThePl...

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.


Flash was already in decline before iOS had a significant impact on it. It was in decline for the same reasons Apple did not allow it on iOS: poor UI, terrible performance, and huge energy usage.

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.


Until the iPhone came, I've a seen lot of attempts to :

- 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


AS3 was based in ES4 specification,"superseeded" by ES5.So ActionScript was in fact pretty opened and could have been today's javascript.

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.


ActionScript 3 was open source.

- 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.


ActionScript 3 was released in 2006, long after developers had already started departing the Flash ecosystem in droves and Flash fell out of favor as delivery technique for web applications. "Ajax", as we were calling it then, started to be used as the primary delivery technique for rich applications; the original Ajax essay came out in 2005 (http://www.adaptivepath.com/ideas/ajax-new-approach-web-appl...) and that's when we started reverse-engineering applications like Google Maps to build interactivity without proprietary plugins and languages.


Oh, and importantly, the Flash Plugin, the runtime, is not even open source today. Making the tooling open source is important and good, but also tends not to be enough.


So opensource a language maybe isn't a problem?

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.


Open source is rarely the problem in the real world. But that's what you get from people who see divide the software world in "open" and "closed".

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.




Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact

Search: