Javascript is Taking Over The World
If already a Javascript developer, you don't need to read this post. If not, please continue, I hope that you will start to learn it just now, because...
Javascript is a central piece of web technology
It is the only language allowed to run on all browsers and it can run on servers too, thanks to NodeJS. Every web application, from email clients to big ERP online systems, uses Javascript.
The chart above is related to 2018 according to RedMonk. One of the factors that can easily explain this scenario is that most framework Client-Side actually uses Javascript as their main engine. This position is been maintained for years.
The HTML code is formed by a hierarchical structure and can be manipulated by Javascript. This power delivers to the user an incredible interactively experience.
It is very easy to debug your Javascript code. Just open your browser and hit F12. Click on the Console tab and be happy. You can explore many other features on the DevTools (most the browsers have).
Javascript is Front End and Back End
Everyone should agree about this affirmation, the Front End side is very delicate about velocity. Faster the user experience, more secure feeling in using software.
Javascript is on everywhere, particularly in consumer-facing applications. The flexibility of using Javascript to interact with the elements on the page, including to communicating with the Back End by REST API or WebSockets, turns this language one of the most powerful features on all online systems. Contemporary libraries such as React, AngularJs and others, are used to provide the framework for the Javascript particularly round data-binding.
Traditional developers usually don't like to use frameworks because they have a small lifetime comparing to the programming language itself. However, for Javascript, this is not entirely true. When Angular came to Brazil, some developers started to study it. Now, the React is coming. And the best thing? both uses Javascript. Of course, you will need to study about the library, but the language is still Javascript.
If you want to use Javascript only on the Back End, you can use it on NodeJS. It is a powerful language that you can use to process things on your server or to provide a page to the user entirely managed by your server.
Front End environment made by your Back End
You can use a framework like one of I mentioned above or you can write your own library. Your Front End can be manipulated by your Back End, take time to study more about WebSocket. You can easily find examples of a Chat program made with Javascript and NodeJs or another library like Reacty.
This is only a small example of what you can do. Imagine creating a complex dashboard to trace the pipeline and forecast of your company according to of the seller's activity in real time?
Even if you are a Salesforce developer
I am a Salesforce developer, but also a Javascript developer for years. For my luck, the language is very similar. I can use controls, like AngularJS, and I can use javascript too. The bigger change about Salesforce is when it came from Classic to Lighting version. The Back End is the same, but the methodology was completely changed, passing from the Back End to the Front End processing. One of the biggest annoying on Salesforce always be its slowness. But with Lighting, this was completely fixed.
If you use Visualforce, the lighting version have a client-side javascript controller and other components to make your work easier.
What is Next?
The world is bright for Javascript. But in the future probably the Javascript will be less Javascript. I do not tell that Javascript will be over, it is the opposite, the language will be the same and even more powerful. But in parallel, we have some limitations to use and deploy big Javascript codes. This is the point we need to go to a Framework.
There are tons of good frameworks using Javascript as their engine: Angular, React, Redux, and dozen more you can choose. The biggest advantage of a framework is because it is fast. Fast for code and fast for run. You don't need to reinvent the wheel, you can change a feature already working. The React, for example, process all your page on the Server Side, bringing to the browser only it is necessary, reducing the weight of your page but keeping the interactively.
Frameworks came and go, today one is better, tomorrow it will be another one. Of course, you can't start to code in React or Angular with Javascript only, there are some patterns and libraries you need to learn, but with Javascript you will be one step closer on your learning curve.