It wouldn’t be right to take a course on something without discussing, even briefly, its history and evolution. Both out of respect for its past and to have a little general culture about the topic.
So, even if you are eager to start coding, wait a moment, and let’s go 👇.
The 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 engaging.
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.”
Eventually, it was renamed “JavaScript” due to a marketing alliance with Sun Microsystems, the creators of Java. The name was more of a marketing strategy than anything else, because there was actually little relationship between the two languages (but Java was popular at the time).
Netscape and ECMAScript
With the release of Netscape Navigator 2.0 in 1995, JavaScript was directly integrated into the browser. Following its success, Microsoft soon developed its own version, known as JScript, for its Internet Explorer browser.
There was a certain risk that each would create its own language. Moreover, both had many shortcomings. As it was going to become a “wild west,” there was a need for the creation of a standard.
In 1997, the ECMA organization (European Computer Manufacturers Association) released the first ECMAScript standard (ECMAScript 1), which served as the foundation for all JavaScript implementations.
ECMAScript 2 followed, as a minor update of the standard.
From ECMAScript 2 to ECMAScript 5
As the web evolved, browsers began to compete fiercely with each other. At that time, the “browser war” was happening (i.e., Netscape Navigator and Internet Explorer were battling to position themselves as the leaders).
The evolution of JavaScript continued with ECMAScript 3, released in 1999, which was a significant 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 reach consensus among browser manufacturers and was never implemented.
Instead, they moved to ECMAScript 5 in 2009, which brought important features (though less groundbreaking than those proposed 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 game in the world of JavaScript.
With Node.js, we could run JavaScript directly on a computer, (not just within a browser). It was like breaking a barrier that limited JavaScript to use only on web pages.
This greatly expanded the possibilities of the language, allowing developers to use JavaScript to build server applications, command-line tools, and network applications.
ECMAScript 6: A Major Milestone in JavaScript
ECMAScript 6, or ES6, was released in 2015 and represented the most significant change in the history of JavaScript.
In summary, JavaScript carried certain “quirks” since its inception. Although understandable due to its history, they were increasingly difficult to defend. So they took the plunge and gave it a good overhaul.
ES6 introduced features like let
and const
for variable declaration, arrow functions (=>
), template literals
, destructuring of objects and arrays, modules (import/export), and classes. 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 and component-based approach.
Subsequently, Facebook released React in 2013, a library focused on the user interface, based on the concept of “Virtual DOM.”
In 2014, Evan You created Vue.js, a progressive framework that focused on simplicity and flexibility.
These frameworks revolutionized web development, enabling the creation of single-page applications (SPAs) with fast and smooth interactions, and modularizing code into reusable components.
TypeScript: Typing for JavaScript
On the other hand, Microsoft made a comeback. In 2012, it developed TypeScript as a solution to the scalability issues of JavaScript in large projects.
TypeScript is a superset of JavaScript that adds static typing and other features from object-oriented languages. This allows developers to catch 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 to evolve with annual updates. These changes have made JavaScript an increasingly interesting and powerful language.
Currently, many programmers continue to criticize JavaScript as a “minor language,” unaware of the significant evolution it has undergone (while maintaining its own identity).
Today, Vanilla JavaScript (i.e., on its own) 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 that is the foundation of all web development and one of the fundamental technologies in the world of programming.
So with all that, and because I really like it, here comes this little course.