The Evolution of the JavaScript Programming Language
When you look around the software development world today, one language that seems to be everywhere is JavaScript. JavaScript has gained a lot of popularity over the years, and, despite facing various stumbling blocks, this language has gone on to become the most popular language in the world today.
For this reason, I am interested in the evolution of the language. The low points, high points, and its strength. Without further ado, let's dive into it.
Pre-JavaScript Days
Before the mid-1990s, the web was not much of a major force. No primary language, with HTML being the major means of making web pages.
However in 1995, the National Center of Supercomputing Applications (NCSA) made moves to change this, they released the world's first popular web browser.
It was called the NCSA Mosaic.
To challenge the NCSA Mosaic, Marc Andreessen brought in a majority of the developers who built NCSA Mosaic to a company called Netscape.
At Netscape, the developers built another web browser called Mosaic Netscape without any of the code used in building NCSA Mosaic.
Mosaic Netscape challenged NCSA Mosaic, and in order to avoid copyright issues the company renamed the product.
Its new name: Netscape Navigator.
Inspiration
After the success of Netscape Navigator, Marc Andreessen felt the web still wasn't complete.
It lacked a primary programming language. In his terms, the web needed a “glue language.”
To overcome this challenge, Netscape entered into a license agreement with Sun’s Microsystems the owner of a popular programming language Java.
The “glue language” would not any relation to Java, except a bit of similarity in syntax.
Brendan Eich was employed in May 1995 to help with creating this language and he created a prototype in 10 days.
Early Days
After the development of the prototype, this newly created language was called Mocha.
A better release was made in September 1995 and a name change was made as well, with the new name being LiveScript.
The final name was agreed upon after the beta 3 release in December 1995: the language would be called JavaScript.
It should be known, though, that this did not bring about any copyright infringements as Sun’s and Netscape had entered into an agreement earlier.
The name JavaScript, however, did help the language feed on the popularity of the Java programming language itself.
Adoption and Version Releases
In the hope of getting adopted by programmers, Netscape passed JavaScript to the European Computer Manufacturers Association (ECMA) for standardization in 1995.
This brought about ECMAScript which uses a majority of JavaScript’s original syntax and has served as the standard for JavaScript ever since. Therefore, ECMAScript could be used in place of JavaScript.
While the language was being known for client-side development, a server-side implementation of JavaScript was released in December 1995 and was called Netscape Enterprise Server.
In 1996, Microsoft developed a JavaScript implementation in ASP and .NET on the Internet Information Services (IIS) web server and it was named Jscript.
Jscript served as a reverse-engineered implementation of Netscape’s JavaScript.
About two years after passing JavaScript to ECMA, the first standard version of JavaScript, ECMAScript 1, was released in June 1997.
ECMAScript 2 was released the next year, with minimal changes to the previous version to keep up with the ISO standard for the language.
While JavaScript was now beginning to be adopted by programmers, it was difficult building websites for Netscape Navigator and Microsoft’s Internet Explorer.
Programmers intending to build cross-platform websites started having issues with developing such websites with JavaScript as the browser reacted differently to code for development.
In December 1999, 18 months after the release of ECMAScript 2, ECMAScript 3 was released with lots of changes. ECMAScript 3 saw the introduction of the language’s regular expression and exception handling features.
Immediately after the release of ECMAScript 3, plans to come up with ECMAScript 4 began in 2000. However, the whole process died down with the closure of this project confirmed in 2003 after ECMA released an interim report containing some of the functionality intended for ECMAScript 4.
In 2005, Eich and Mozilla joined ECMA so as to be able to assist E4X (ECMAScript for XML), which then lead to a collaboration with Macromedia. Macromedia decided to adopt JavaScript and use E4X in ActionScript 3.
Later that year, the adoption of JavaScript skyrocketed further after Jesse James Garrett’s paper was released where he described the technologies JavaScript supported as the backbone for the web, introducing the term Ajax as a way of building modern websites.
While ECMAScript 4 was abandoned, the successor to ECMAScript 3 was finally released in December 2009. This was a decade after the release of ECMAScript 3 and was called ECMAScript 5 and came with lots of new features including support for the parsing of JSON files.
In 2013, plans were made for the release of the ECMAScript 6 but just as in the case of ECMAScript 4, the process slowed down. However, the project did not die out completely as it was released in June 2015.
ECMAScript 6 was renamed to ECMAScript 2015, and this naming pattern has continued for the latest releases of the JavaScript standard.
ECMAScript has further seen the ECMAScript 2016, 2017, and 2018 versions all released in the month of June of their various years.
Today, JavaScript is widely adopted as you can barely see any website without its client-side being powered by JavaScript with big companies like Google and Facebook relying largely on the language.
As at the time of writing ECMAScript 2018 is the latest version of JavaScript, with new features such as asynchronous iterators, asynchronous generators, and new regular expression features.
JavaScript Frameworks
While JavaScript has proven to be a powerful language, it's frameworks have been a key part of its evolution and popularity.
In 2000, the first popular JavaScript framework was released. It was called Dynamic HTML (DHTML). DHTML was used to make basic changes to web pages. The sort of changes you would make with CSS easily these days. DHTML was released in 2000.
In 2006, a lot of frameworks and libraries were released. The most popular being jQuery.
jQuery was created to help developers build sophisticated web pages. This framework is quite powerful, challenging the issues faced by developers with the subtle differences in browser implementations. jQuery also abstracted all of the complexity of client-side web development at the same time, making it easy for developers to learn and use.
Since the Netscape Livewire Proweb (Enterprise Server) implementation of JavaScript for server-side development in 1995, no other implementation existed for such purposes until 2009 when Node.js was released.
Today, Node.js serves as one of the most used server-side development technologies in the world, bring more dynamism to JavaScript's client-side focused nature.
In 2010, Backbone was created by Jeremy Ashkenas.
Single Page Applications have had a huge impact on modern day web applications. Backbone is one framework that helped push the prominence of SPAs, with Backbone developers being able to build Single Page Applications easily.
AngularJS was also created in 201 by Adam Abrons and Misko Hevery. Angular is one framework that helped bring more popularity to JavaScript, as it provides a complete architecture for front-end applications for its developers.
In 2013, Knockout, Meteor, and React came into the limelight. These three frameworks gave JavaScript more popularity, though React remains the most successful of the three. Owned by Facebook, React has become one of the most popular JavaScript frameworks ever, boasting a large user community.
Conclusion
JavaScript has really come a long way, from a language with a prototype written in just 10 days to the most used programming language in the world. Fortunately for JavaScript, the web will continue to blossom and the language will continue to get better.