Post Image

Javascript-The Jack of all Trades

- Vineeth Asok Kumar

14-01-2019

We are in an age where JavaScript has become part of everything. Don’t believe me check the Stack Overflow 2018 survey. I’m not trying to say that other languages are crap and you should only learn JS. Most of us developers know that, the language does not matter but the way we do things does. Every language has its ups and downs, but Today I would like us to see the current JavaScript usage considering it was originally intended for only DOM Manipulation.

After the release of ECMAScript 2015 (ES6) we have gone a long way to perform some advanced functionalities that can be only performed by importing a library like jQuery. We can now select elements using document.querySelector(‘#id’) as same as $(‘#id’) and using querySelectorAll for class-based also.

We also got multiple javascript frameworks which help us dynamically render the pages and thus improving the User Experience. Angular, Vue, React and Ember are some of the famous and trending frameworks. With my experience in EmberJS, though it has a learning curve, it is highly efficient to work in these frameworks as they can help us with reusing the components and can easily editing the dom structures without reloading the entire page.

JS is not only on client side. After the release of NodeJS on July 2011 for our server requirements. With this, we have a fast efficient and easy to learn server-based runtime. This was a sign of relief for many Front-end Developers as there was now a way for them to apply their knowledge without compromising time for learning and putting so much effort on another language for server-end and thus can save a lot of the business resources. Many of the organizations such as Netflix have already implemented NodeJs as their server side and you might have heard of it too.

We can use TypeScript, a superset of Javascript which is becoming increasingly popular due to its approach on the object-oriented programming. Typescript is currently being adopted in React and Vue has already adopted it in its vue-cli version.

Today we could see JS everywhere from our websites to even in AI and robotics. We have seen applications developed in JS libraries or frameworks to run in our Computers. ElectronJS is one such example of the above being used to develop IDE like ATOM for the desktop. Another such framework for the same purpose is App.js, Meteor.js etc. With the help of Ionic framework and MeteorJS, we can also develop Mobile based Applications.

For Machine Learning and other such features, we could see that TensorFlow.js is a great opportunity to explore it.TensorFlow is also being used by Google for most of their services that they provide us. Below is a video from TensorFlow telling us about this.

We have seen that JS can use AI using TensorFlow and then what about robotics and IOT? Well, the answer is we can use it for robotics as well. Some examples of these are NodeBots and JohnnyBots. There are many other frameworks such as these and will come in the future too, So rest easy we get to see more of such wonders.

Well another expected new kid who is the wingman of our JS is WebAssembly. People are eager to get it ready for it to come as an official to many of the frameworks so we can use it to improve our performance and to convert low-level language based language to be available to our front end and back-end so that people who are comfortable with high-end languages can rest easy. WebAssembly is currently being adopted by many organizations and we will get to see it more and the next 2-3 years. Unity currently uses it and you can check it out in this link. you must be thinking “why WebAssembly? It’s not even JS”. Well, it’s because of his predecessor asm.js.

Conclusion

We have seen that there are many ways we can use javascript in development in this current era. Even though Js has almost touched all of the fields, it still has room for growth. With the current trend in Job openings, learning javascript is one of a must for a web developer front-end or back-end. If you are programming for fun also, learning JS can be highly beneficial.