It wouldn’t be right to do a JavaScript course (or any course) without talking, even briefly, about its history and evolution. Both out of respect for its past and to have some general knowledge about it.
So, even if you’re eager to start coding, wait a moment, let’s get into it 👇.
Beginning and Origins of JavaScript
JavaScript was created in 1995 by Brendan Eich while working at Netscape Communications. The company was looking for a way to make web pages more interactive and attractive.
The original idea was to develop a simple language for beginner programmers that could integrate with HTML and the browser. Eich developed JavaScript, originally under the name Mocha and, later, LiveScript.
Finally, it was renamed “JavaScript” due to a marketing alliance with Sun Microsystems, creators of Java. The name was more of a marketing strategy than anything else, because in reality there was little relation between the two languages (but Java was trendy).
Netscape and ECMAScript
With the release of Netscape Navigator 2.0 in 1995, JavaScript was integrated directly into the browser. Given its success, Microsoft soon developed its own version, known as JScript, for its Internet Explorer browser.
There was some risk that everyone would make their own language. Furthermore, both had many shortcomings. As it was becoming a “free-for-all”, the need for a standard was seen.
In 1997, the ECMA organization (European Computer Manufacturers Association) released the first ECMAScript standard (ECMAScript 1), which served as the basis for all JavaScript implementations.
ECMAScript 2 came later, as a minor update to the standard.
ECMAScript 2 to ECMAScript 5
As the web evolved, browsers began to compete fiercely with each other. This was the era of the “browser wars” (meaning Netscape Navigator and Internet Explorer were fighting tooth and nail to be first).
The evolution of JavaScript continued with ECMAScript 3, released in 1999, which was a good improvement with features that were missed compared to other languages.
The next version, ECMAScript 4, was a proposal that introduced significant changes, but failed to gain consensus among browser vendors and was never implemented.
Instead, they moved to ECMAScript 5 in 2009, which brought important features (though less groundbreaking than those planned in the canceled 4).
Node.js: JavaScript Outside the Browser
In 2009, Ryan Dahl developed Node.js, a JavaScript runtime environment based on Google’s V8 engine. This changed the rules of the game in the JavaScript world.
With Node.js we could run JavaScript directly on a computer, (not just inside a browser). It was like breaking a barrier that limited JavaScript to only web page use.
This greatly expanded the possibilities of the language, allowing developers to use JavaScript to build server applications, command-line tools, and networked applications.
ECMAScript 6: A Major Milestone in JavaScript
ECMAScript 6, or ES6, was released in 2015 and represented the most significant change in JavaScript’s history.
In short, JavaScript carried certain “peculiarities” from its conception. Although understandable given its history, they were becoming increasingly difficult to defend. So they went all out and gave it a major overhaul.
ES6 introduced features such as let and const for variable declaration, arrow functions (=>), template literals, object and array destructuring, modules (import/export), and classes. A bit of everything!
These innovations made JavaScript more powerful, readable, and manageable, bringing it closer to other modern programming languages. ECMAScript 6 became the reference standard.
Frameworks: React, Vue and Angular
As JavaScript gained popularity, frameworks and libraries emerged to facilitate the development of complex applications.
Angular, developed by Google in 2010, was one of the first to implement a structured, component-based approach.
Later, Facebook released React in 2013, a library focused on the user interface, based on the concept of the “Virtual DOM”.
In 2014, Evan You created Vue.js, a progressive framework focused on simplicity and flexibility.
These frameworks revolutionized web development, enabling the creation of single-page applications (SPAs) with fast and fluid interactions, and modularizing code into reusable components.
TypeScript: Typing for JavaScript
On the other hand, Microsoft is back in the game. In 2012 it developed TypeScript, as a solution to JavaScript’s scalability problems in large projects.
TypeScript is a superset of JavaScript that adds static typing and other object-oriented language features. This allows developers to detect errors at compile time and improve code maintainability.
Today, TypeScript has become a widely adopted tool, especially in large and collaborative projects, and is compatible with all browsers.
From ES6 to the Present
Since the release of ECMAScript 6, JavaScript has continued evolving with annual updates. These changes have made JavaScript an increasingly interesting and powerful language.
Currently, many programmers still criticize JavaScript as a “minor language”, unaware of the great evolution it has undergone (while maintaining its own identity).
Nowadays, Vanilla JavaScript (i.e., by itself) incorporates many ideas from frameworks and other tools, making it easier to use in complex developments without the need for additional libraries.
JavaScript is a modern language, the foundation of all web development, and one of the fundamental technologies in the programming world.
So with all that, and because I really like it, this little course is coming.
