Why You Should Learn the Basics Before Becoming a Vue.js or React Developer

Stephen Kastona
JavaScript in Plain English
4 min readApr 18, 2021

--

Learning the basics of JavaScript first before diving into frameworks will give you a lot of leverage in your career journey.

Photo by Claudio Schwarz | @purzlbaum on Unsplash

It was our final meeting with our project supervisor before the presentation. Pius (name changed) was working on an e-commerce app. Everybody except our supervisor knew he didn’t build that app.

He bought it from a website that claims to sell A-grade projects for final year students like him. The supervisor noticed a flaw in the design of the app. The system has no way of ‘knowing’ when the customer gets their product. The best the system could do was update the delivery status after a week of order.

The supervisor asked Pius, “What if the order doesn’t arrive before the week runs out?” Pius, now confused and afraid of being asked to go and fix the issue, answered, “By the grace of God, all orders will arrive within a week.”

We live in an exciting time for JavaScript developers. At least the job boards will agree. And what is more exciting is the fact that you can binge-watch a YouTube video about your favorite JavaScript framework and be productive in a week. But before you take this route and get your hands dirty with these frameworks, I will give you 6 reasons why you should hold on for a bit and learn the basics of JavaScript first.

You waste time googling basic syntax

After you learn the basic structure of a Vue.js or React app, building really great apps will depend largely on how well you understand the JavaScript language. The same goes for CSS frameworks like Bootstrap. You will find yourself spending time googling basic syntax instead of focusing on solving the problem at hand if you don’t understand the language well.

I know that all programmers google stuff on the internet, but nailing the basics of the language reduces the need to do it all the time. When you always have to stop and check if it is item in items or item of items, then you introduce context switching that will eventually affect your productivity in the long run.

Debugging your (or someone else’s) code becomes an issue

If you are employed as a JavaScript developer, your work is generally going to be maintaining other people’s code, which includes rewriting and adding new features. If you are not grounded in the basics, debugging and extending these features will not be a walk in the park for you. Spending time learning the language means you understand error messages, design patterns, etc. This knowledge will go a long way in helping you work effectively with other people’s code.

You cannot fine-tune third-party packages to your needs

Open source projects are called open source for a reason. You are free to look into the code, make changes according to your need, and apply them. If all you know about is npx create-react-app, then extending or customizing these packages will be rough waters for you to play with. When you find a package that almost suits your need but lacking in certain aspects, you’ll have the confidence to rip it apart and add to it if you understand the language really well.

You cannot contribute to open source

A large part of our career growth is measured by how much we can give back to the community. To be able to effectively collaborate and share code in the open-source community, you have to be grounded in the basics and understand the language really well. You will be reading other people's code and understand their intent to be able to contribute. Simply learning to use frameworks and not having a grounded understanding of the underlying language will not do great in your open-source journey.

You over-engineer simple solutions

So you are asked to build a countdown landing page for an event. You get your React app set up, install an animation library, add Bootstrap, and head over to YouTube to see some examples. To you, every problem is a nail because your only tool is a hammer. Lots of what you will encounter can be done with just your good old HTML/CSS plus a little JavaScript. But because you cannot get beyond your knowledge of these frameworks, you end up with a large node_modules folder containing packages with overlapping features.

You have a sense of lack of control

Sometimes, even if you don’t ever need to go beyond these frameworks and your scope of work rests on them, there is this feeling of lack of control that comes with not knowing the basics. Things feel like magic and you cannot explain why your code works. However, if you are grounded in the basics and understand the language well, you know why things work to some extent and can explain your code well. This gives you a feeling of control and goes a long way in taming that monster called the impostor syndrome.

Summary

Learning the programming language first before diving into frameworks will give you a lot of leverage in your career journey. If you don’t want to be like Pius who depends on luck for things to work well, you must be really grounded in the basics.

More content at plainenglish.io

--

--

I learn, unlearn and relearn. I write code. I’m a christian. I love family. I love to grow.