DEV Community


Discussion on: How would you learn a difficult language?

hasnaindev profile image
Muhammad Hasnain

There is something called, "The first-principle thinking." It says that you break a complex thing into its basic and primitive form and work your way from up there. For instance, an essay consists of paragraphs, which consists of sentences, sentences are composed of clauses, clauses consists of words and words are made up of letters.

Now, to write an essay, you will take each word and closely inspect it to see if the word is correct. Then you see what message and feel does the word deliver when put into a certain place in a clause. You see? How thinking like that can make your essay really good.

The same concept can be applied here. ReactJS is a library based on JavaScript, it uses the latest version of JavaScript. To know ReactJS then, you must know the fundamentals of JavaScript, like the difference between variable declaration using var, let and const, destructing, spread operators, arrow functions, lexical this keyword and much much more.

I won't discuss NodeJS but let's talk about ExpressJS. It is an MVC based framework like Django. If you know MVC, you will automatically understand the general structure of all other such frameworks even if they are in a different programming language.

You see? Sometimes the direct knowledge of a field will not help you. You will have to understand things like data structures, algorithms, design patterns and architectures. Languages and frameworks will come and go but these topics are unchanging principles that will last much longer.

Anyways, to cut it short, first learn JavaScript very well and know all the concepts and features that it has. After you are fluent in advanced JS or at least know all the concepts, start with ReactJS.

augustasv profile image
Augustas Verbickas

Great explanation, thank you for suggestions! I appreciate than people explain things in simple terms!