JavaScript. Ugly language from past becomes straight forward technology of the future.

It’s not news anymore that JavaScript is the most cross-platform and cross-tier technology today. Let’s take a look on it. JavaScript can be efficiently used on server part of Web-server, can be used to create modern micro-services. JavaScript is the only technology for now that allows to build mobile applications for ALL mobile platforms with 100% the same code of UI and logic for every platform with Apache Cordova technology or with React Native from Facebook. JavaScript allows to build cross platform desktop applications and even more that desktop applications can be easy converted to mobile. And of course all web-browsers support JavaScript. Even some micro-controllers start to support JavaScript. Really, JavaScript is everywhere now. And it is highly efficient everywhere.

But why? Why JavaScript is so popular taking into account that there is no classic OOP support and no multi-threading support in JavaScript? It is a kind of magic when limitations become benefits. Because of limited functionality developers have to build “plugins” on another languages (for example native modules for Node.js or native modules for Cordova) and this plugins are simple units that solve simple task. JavaScript limitations enforce developers to build small simple units that do one thing but do it well. And these units are reusable. Dreams come true!

From other point of view simplicity of JavaScript keeps developers away from over-engineering.

So what is JavaScript today? It is a language to write application logic in the most simple and efficient way without mixing it with technical details.