Although we all call it JavaScript, it’s official name is ECMAScript. The name ECMA is the abbreviation of “European Computer Manufacture’s Association.” ECMA is a standards organization for information and communication systems. Today you’ll see JavaScript called by many names or abbreviations: JS, EMCAScript, ES5, ES6, ES7 EMCAScript2015/2016.  They all (for the most part) refer to the scripting language known as JavaScript.

JavaScript was created in 10 days in May 1995 by Brendan Eich at Netscape. Back then it was a simple scripting language to help build simple dynamic websites. The word Java in JavaScript has nothing to do with the Java language created by Sun Microsystems (and now owned by Oracle). It was all a marketing idea. The Java language was becoming popular at the time and Netscape decided to use the name to gain traction with the scripting language.

In 1996 JavaScript was sent to the ECMA to become a standard. In 1998 ECMAScript 2 was official released.

You may also like: The Developer’s Guide to Mobile Application Development

So, JavaScript became ECMAScript and has had several versions over the years, 1, 2, 3, 4, 5.1, 2015 and 2016. Version 4 was never released (but that’s a “Whole Nother” story). In 2015, ECMAScript 6 (or ES6) officially became ECMAScript2015. The current specification is called ECMAScript 2016 (ES7), but web browsers currently don’t support it yet. Most browsers only fully support ECMAScript 5. To help with this, developers use a “Transpiler.”

A transpiler is a source-to-source compiler.  It allows developers to write code in the new version of ECMAScript and have it transpiled down to the older version so it can run in the current browsers on the market.

Are you tired yet? I’m just getting warmed up.

Back in 2009, EMCAScript 5/ES5 was released and everything started to change. JavaScript moved from a simple scripting language to a language that allowed you to build complex application that ran on PCs, Mobile devices and Backend Servers. JavaScript Frameworks and libraries started to popup everywhere to help developers build these complex systems.

As the years passed by, it started to feel like every day there was a new JavaScript framework, library or tool. You no longer just needed to know JavaScript; you had to know the frameworks as well. But which ones do you use? This is where the “fatigue” comes in for developers.

Even today there are several options to choose from. Here is a “small” (but not complete) list of some of the popular ones today:

  • Frameworks: React, Angular JS, Vue.js, Ember.js, React-Native, Ionic
  • Libraries: Redux, RxJS, Lodash, underscore, axios, D3.js, Chart.js
  • Tools and IDEs: Npm, Babel, Webpack, Atom, VSCode, Webstorm, TypeScript, Flow, Yarn
  • Testing: Jest, Karma, Jasmine, Mocha, Enzyme, Chai, sinon

As you can see the challenge for developers is: how to keep up? For me, I find the best approach is a weekly mailing list. To get an overall view of what is happening in the industry today I get the following:

To get more specific framework news, I subscribe to other weekly mailing list like:

Now; do I read every article, no. Instead, I use it to see what is trending and picking up steam in the industry.  When I see topics repeating, I usually take the time to do more research.

I also use Twitter. I don’t tweet but my feed is full of technical posts. A lot of times I see announcements of new versions of frameworks posted. But again, I don’t read everyone.  I look for what is trending to determine where I need to do more research.

It’s a fast past world out there and it seems to be getting faster. Fundamentally you have to like to learn and keep learning to keep up. But don’t get overwhelmed and try to learn everything. Pick a framework and learn it. I usually recommend starting with one of the two most popular ones: React or AngularJS. From there, learn a build tool. I recommend Webpack.  Next move on to testing. For React, I would use Jest. For Angular, look at Karma and Jasmine.

Next; take and break and rest!

Share this: