DEV Community

Cover image for The Evolution of JavaScript
IanMcbull
IanMcbull

Posted on

The Evolution of JavaScript

Image description
The year is 1995, and the world wide web is ripe with potential. By the end of that year, the number of websites will have increased by 300%. Microsoft also released their much-anticipated Windows 95 which came bundled with Internet Explorer.

The most popular web browser at the time was Netscape Navigator with an 80% market share. The founder of Netscape, Marc Andreessen was envisioning a new better, and more dynamic web. With better client-side experience and more interactivity. Netscape then decided to enter into a partnership with Sun Microsystems, to make their programming language, Java available in the browser.

Netscape also wanted a scripting language that was relatively easy to use and more dynamic in nature compared to Java, which is a more strict programming language. So essentially, this language would be more of a sidekick to Java, a Robin to the Batman.

Robin slapping batman

This is where Brendan Eich, the creator of Javascript comes in. Netscape hired him to come up with said scripting language. So in just ten days, Mocha, which was the initial name of Javascript, was born.

Fun Fact: The first version of Javascript didn't even have a traditional Garbage Collector.

The name Mocha was then changed to LiveScript, then eventually to Javascript. The naming was a marketing ploy to get Java developers to use it. The idea was, at least in theory, that a Java developer would be interested in using a language that had the name "Java" in it.

JavaScript gained popularity pretty quickly and by 1996, there was a sense that Javascript was going to revolutionize the web. There was a problem though, JavaScript hadn't been standardized so if a competing browser wanted to use JavaScript in their environments, they had to go through Sun Microsystems which owned the name JavaScript.

Microsoft could see the potential that JavaScript had and wanted to use it in their browser. They however did not want to deal with trademark issues. So Microsoft did essentially what most developers do on StackOverflow, they copy-pasted the JavaScript code tinkered with it a bit to suit their environment, and called it JScript.

The Joker meme

What this meant is that you could write JavaScript code that runs in Netscape Navigator, but not on Internet Explorer. Essentially two sides of the same coin. This was the "it runs on my machine" meme playing out. Microsoft eventually discontinued JScript.

Work on my machine meme

In 1996, Netscape took JavaScript to Ecma International, a nonprofit standards body which back then was called ECMA(European Computer Manufacturing Association), to draft a standard specification for the language.

Standardizing the language would ensure there was a single source of truth. A single implementation of JavaScript that could run on different platforms in the exact same way. This is why your JavaScript code runs the same on_ Mozilla, Chrome, and Safari_.

For a new specification to be written, you need two things, a_ technical committee_, and a standard. The standard specification for JavaScript is called ECMA-262, and the technical committee is Technical Committee-39(TC39).

The TC39 is made up of between 50- 100 volunteers from organizations who have a vested interest in the web, like Google, Mozilla, Facebook, and so forth. They meet frequently to discuss the state of the language and offer ideas on how to improve it. For a proposal to be added to the language, it has to go through 4(zero-indexed) stages before it can be adopted and added to the language specification.

An image showing proposal stages for ECMAScript

The adding of new features can be a long rigorous process and can sometimes turn comical as was the case in the famous smooshgate incident in 2018.

Starting from 2015, a new version of ECMAScript is released annually with the most famous one being ES6 or ES2015 which brought a lot of new features to the language. ES6 because it was the sixth edition of the language. ES2015, because it was released in the year 2015.

Javascript versions

The language has come a long way from playing second fiddle to now becoming the most popular programming language. It can now be used on multiple platforms, from web servers to mobile devices to embedded systems to animation.

I know js meme

It's now virtually impossible to come across a piece of software that will not at some point interact with JavaScript.

Having a look at the events leading up to the current JavaScript, one cannot help but appreciate the hardworking individuals who are making time to better the language.
Thanks for reading and happy coding. 👋

Top comments (0)