Previous Lecture Complete and continue  

  Why JavaScript?

Why JavaScript?

JavaScript was created in 1995 by Brendan Eich while he was working at Netscape (an early web browser company), before he went on to co-found the Mozilla project. Originally, it was a tool for enhancing web pages. Since then, it has evolved into a powerful language with many accompanying tools and frameworks arriving along the way.

It is now one of the most in-demand and popular programming languages in the world. Here's a chart from StackOverflow's annual developer survey:

Here are a few important facts you should know (these points will be covered in further detail in this series):

  • JavaScript (not to be confused with Java) is an implementation of ECMAScript.
  • You'll see it referred to as ES5, ES6, ES7, or also by year like ES2015 - these are different versions of the language.
  • Each new version adds features to enhance the language. For example, ES6 (also called ES2015) was published in 2015. Read more about it at the Wikipedia page.
  • Fun fact: the fourth version of ECMAScript was abandoned and never published.
  • A JavaScript engine comes built-in to all major browsers, which are designed to display websites using three main languages: HTML, CSS, and JavaScript.
  • In 2009, Ryan Dahl published Node.js, a JavaScript environment that enables developers to use JavaScript outside of the browser (e.g. on servers). The advent of Node.js boosted JavaScript's popularity and helped put it at the center of the web development world.
  • Many frameworks and tools are used to aid the JavaScript development process for building applications. The most popular ones are Angular and React (on the client-side), and Express (on the server-side).
  • Angular is maintained by Google. React is maintained by Facebook.

JavaScript is not hard to learn when taught by the right teacher. You should keep your focus on mastering the language before diving into additional tools and frameworks. We'll cover everything you need to know to be a proficient developer.