Great article. While JS isn't my favourite language, it has many redeeming features. For one, to get started, just open up a browser console, and have at it! No other language offers such a low barrier to entry. You can create a simple HTML file, run it strait from the browser, and voilà, you have a program.
Javascripts flexibility is why you see emulators, 3D games and simulations, everything written in Javascript. Every language compiles to Javascript, and you can edit code live in Javascript, having it render directly into the browser, without running a server, REPL, etc...
The main advantage of Javascript though is the freedom it gives to developers - you can be productive in it quickly, individual developers can get alot done with it in a short time, and it enables web apps to be created quickly.
Look at something like Firefox OS, how easy it is to script and develop for, and then you'll understand why JS is great.
For one, to get started, just open up a browser console, and have at it! No other language offers such a low barrier to entry.
Languages do not "offer" browsers. Browsers offer languages.
Javascripts flexibility is why you see emulators, 3D games and simulations, everything written in Javascript.
It's because people want to deploy to browsers and there are no alternatives.
Every language compiles to Javascript
Any language can be compiled to any other language if someone spends enough time on it. The reason people compile things to JavaScript is, again, because there are no alternatives.
The main advantage of Javascript though is the freedom it gives to developers
This sounds like something from Ministry of Truth in 1984. We're stuck with a single language, with no proper way to bypass it. The "alternatives" are ugly hacks that still revolve around the same language, have most of the same problems, then add some on top and make development tool-chains orders of magnitude more complex. How on earth this is freedom?
> Languages do no "offer" browsers. Browsers offer languages.
You misread? I said it offers a low barrier to entry. I'm well aware of Javascript's relation to the browser, or Dart's in Dartium as a counter example.
> It's because people want to deploy to browsers and there are no alternatives.
Flash? Java? C# (Silverlight)? Dart on Dartium? Native Client on Chrome? Some have came and went, some aren't catching on.
> This sounds like something from Ministry of Truth in 1984. We're stuck with a single language, with no proper way to bypass it. The "alternatives" are ugly hacks that still revolve around the same language, have most of the same problems, then add some on top and make development tool-chains orders of magnitude more complex. How on earth this is freedom?
So propose an alternative... Native Client in every browser perhaps? I wouldn't be opposed. Or is there another language you'd prefer? Dartium is here, you can test it today. https://www.dartlang.org/tools/dartium/
> This sounds like something from Ministry of Truth in 1984.
Freedom, as in low barrier to entry and shipping an app. And certainly more freedom than MS, Oracle or Apple offer with their solutions.
What platform makes distributing to users easier, and still free from corporate control?
Javascripts flexibility is why you see emulators, 3D games and simulations, everything written in Javascript. Every language compiles to Javascript, and you can edit code live in Javascript, having it render directly into the browser, without running a server, REPL, etc...
The main advantage of Javascript though is the freedom it gives to developers - you can be productive in it quickly, individual developers can get alot done with it in a short time, and it enables web apps to be created quickly.
Look at something like Firefox OS, how easy it is to script and develop for, and then you'll understand why JS is great.