Should I Learn JavaScript Before React, Vue, or Angular?

Should I Learn JavaScript Before React, Vue, or Angular?

TL;DR

Many software engineers are chasing the hottest JavaScript libraries and frameworks, but the list is endless. Many frameworks and libraries started out as someone’s way to save time. It’s their own abstraction, but they knew the pure underlying language first. The truth is that abstractions should make your life easier, as long as you don’t focus on abstractions. Don’t rush to learn any framework or library built on top of JavaScript. Learn the underlying concepts, and you’ll be able to pick up any abstraction at will.


In the past years, I notice that many software engineers have been crazily chasing the hottest JavaScript libraries and frameworks. I understand that at some point you need to learn one because most companies require them during the interview process, so you often find yourself in process of evaluating the pros and cons of each framework.

Yesterday you were learning Backbone.js, jQuery, then AngularJS, and moved to ReactJS, Vue.js, all Angular flavors. Today started with Svelte and Next.js, the new ones. And tomorrow another will come up. And I didn’t touch even half of the frameworks and libraries that are or were out there. The array list is endless.

Of course, I don’t know if this happens or happened to you, but in the past I have been chasing the hottest Javascript frameworks or libraries, looking for trends, comparisons, and how to learn them since the industry is demanding them. I have been a victim of that, and you probably have been, or need to be, to understand it.

That’s why I am sharing this. Please, please, please, don’t rush to learn any framework or library built on top of JavaScript. Don’t chase the hottest new JavaScript frameworks or libraries. First, invest your invaluable time in understanding and focusing on the engine: the core concepts and Javascript principles.

If you learn JavaScript, you can pick up hyped-framework-or-library-X in a short amount of time, saving you time in the future!

I mentioned library and framework for several times now, but maybe some of you don’t know the difference yet. The library is something you call from your code, and the framework is something that calls your code.

Many frameworks and libraries started out as someone’s way to save time. It’s their own abstraction, but they knew the pure underlying language first.

The truth is that abstractions should make your life easier, as long as you don’t focus on abstractions. Learn the underlying concepts, and you’ll be able to pick up any abstraction at will.