How to adjust to the rapidly changing JavaScript ecosystem?

The question stated above was the panel discussion topic for the recent JS meet up held at FuseMachines in Kathmandu, Nepal. It certainly is a riddle, no JS developer has fully solved yet. So obviously, I see myself and everyone else struggling along side me.

If you are not a JS developer or haven’t been updated to the current JS ecosystem, I would recommend you to read an interesting article by Jose Aguinaga on How it feels to learn javascript in 2016? before proceeding further.

Assuming, you have already read the article and still think

Jquery is awesome and it works for me.

You are not totally wrong. Jquery is actually pretty awesome and for many simple use-cases, it is the quicker and rational choice. Then again, upon scaling your system, trust me it will get messy and complicated.

So, what shall we do?

IF (You are a newbie)

I would suggest you to get comfortable with a bit of core JS and start with basics of ES6. Just know the basics and build a “Hello world” application.

Why ES6? you ask.

Well, to that I would say -

ES6 is like the shift you made from C to C++. i.e. from a procedural approach to a more organized object oriented approach.

Don’t be too worried though, it is just syntactic sugar for JS.

I brought up ES6 because I’m pretty sure by 2017 it will be everywhere. So if you want to cope up with the changes, ES6 is a must.


So you have done some Jquery here and there, know ES6 and have encountered a few JS frameworks like Angular, Vue etc. You aren’t much different than me.

The mantras I follow when dealing with new trends in JS are:

  1. Know just the abc’s i.e don’t dive in too deep, too soon : A year ago Angular 1 was everywhere, I learned it but then React came along which is far more powerful and now all my effort is in vain. Even Angular 2 betrayed me with its vast shifts.
  2. Don’t use it be cause everyone is using it (Requirement Analysis): It may sound like a rant on Angular but it betrayed me again, this time with SEO. As Angular was purely interpreted on the browser when rendering, all the web crawlers got was this =>“{{ meta_description }}”. However, there was Prerender to rescue but still it was one more hassle to add to the system.
  3. Follow the community : The community will have valuable news you wouldn’t want to miss on.
  4. Don’t panic : There is no need to panic. Angular didn’t work out for me and React may, but I don’t know it just yet and it doesn’t matter. Something bigger and better lets say ‘metallica.js’ may be out in the future. Just move along.
  5. Change is inevitable, plan ahead and cope along : In my case shifting to something like React from Angular was impossible unless it was fully re written. The lesson from all this is that I shouldn’t have made my system overly dependent on a primitive framework and so should everyone.