It is a very versatile language. It can be used to build desktop applications, mobile apps, games, and even embedded systems. In addition, it is also widely supported across browsers and operating systems.
However, the most popular question among beginners and people who want to start building something nice like a website or an app is :
In this article we will understand first what “Learn” means as many people get “learning” confused with
Learning means gaining or acquiring knowledge of something after studying it or being taught to you.
This means when you learn something, you become knowledgeable in this subject and have a basic understanding of what this subject is.
But in no case learning means mastering.
And the answer to this question is it depends.
It depends on what you would ask?
Well, it depends on if you’re a self-taught person – Like me 😃 – Or if you’re enrolled in some sort of program or Bootcamp or university…
But either way, stick around to see exactly the difference between these 2 methods and how much time you will need depending on which situation you’re in.
a)- Self-taught way
And when I say “grasp the basics“, I’m not talking about peeking or skimming the course or the concepts quickly while you’re watching TV and talking to your friend at the same time on the phone while having an eye on the course and the other eye on the computer.
Because to achieve this level of comfort, knowing how a for loop works is not enough. Instead, you should know how a for loop works, and how nested loops work, and how to use a for loop with an object to create various instances of an Object, and if you use a for loop inside a function what will happen, and if you use a function inside a for loop what will happen and so on and so on…
So you see, just for one concept, which is for loops, there is a lot to understand.
Of course these are not fixed numbers, we’re all different and for some they might need more than 1 year and half and for others less. But this is the average duration that it takes.
Also when I’m talking about the “basics“, I really mean the “basics“, like for loops, functions, objects, arrays… I’m not even talking about advanced concepts like how to make an AI, or how to make a blockchain….Because those, once you understand the “basics”, they become very easy to work on.
Simply because you have to figure out everything all alone.
You have to check hundreds of websites, watch thousands of videos, select the right courses for you by yourself, make your own mistakes, google them hoping you’ll find someone who already had the same problem and found the solution, join forums so that you can ask questions there and see if there is anyone ready to help, understand the code or others code…
That’s pretty tedious and can quickly become overwhelming and discouraging because you feel lonely and there is nobody you can turn to for help.
Not to mention that nowadays, there are millions of resources out here, so when you are a beginner and trying to figure out things by yourself, you get lost quickly, because everyone says that this video is the best, or this course is the best, or this website is the best. So you don’t know which one really to trust.
b)- Guided way
Using this method speeds up the learning process tremendously and has many advantages. But it requires financial investment
One of them iseudureka! platform. I like this platform because it has courses not only about HTML, CSS, and JS but also about Cloud computing, cyber security, BI…So if you’re interested in any other course you can take it as well. All it requires is an enrollment to your favorite course and you get access to it with the certificate at the end.
On the other hand, we have mastering.
Mastering means knowing the subject sufficiently that not only you feel comfortable using it or talking about it, but it becomes a second nature to you.
4)- How Much Time You Have to Dedicate to Learning JS?