If you are doing things correctly you should have picked up some HTML and CSS knowledge before getting to this step.
You’ve picked up HTML and CSS in record time, so learning JS in a week shouldn’t be an issue, right?
It is going to take time and patience to get to grips with. There will be a lot of frustration along the way and it takes a lot of perseverance.
You need to reflect on your motivations for picking up JS.
Even once you land a job and know what it is like to be a programmer, professional development and continued learning are an enormous part of being a software engineer.
Learning to code is not a race. There may be some time constraints in terms of the need for a job but unfortunately, the process can’t be rushed.
What can you expect to learn in a week?
- Data Types
Unless you are an experienced dev who is picking up JS for work requirements, speed should not be your aim.
Your aim should be to get a good grasp of the language.
Putting a time limit against learning something always adds to the pressure. An incredibly small timeline of a week ramps up this pressure.
When you struggle to get certain concepts things are always frustrating. Add on the time pressure and the pressure grows significantly.
What should be a fun challenge turns quickly into despair.
Motivation can always be fleeting. One minute it’s there, and the next it’s gone.
As the frustration begins to build and you have to spend hours on small issues (which you will), your motivation evaporates.
Extra pressure will sap your motivation very quickly. Learning to code is a marathon, not a sprint.
You don’t want to work flat out for a week only to be put off because you are so frustrated and your motivation has disappeared.
Learning to code is supposed to be a fun, challenging experience. For myself and many other developers, it is the gateway into a new career.
A truly life-changing experience but development is not easy.
Putting unrealistic targets on your learning takes away the enjoyment and will make the learning process a slog. That’s if you even continue at all.
What do you mean by learning?
- Will you be able to copy a Youtube tutorial or course project verbatim? Probably yes.
- Will you have made some small projects? Highly unlikely, but this will depend on prior experience.
Are you an experienced developer who has multiple other languages under your belt?
Even then you won’t have mastered it and understand all of the quirks.
You will need to learn a host of other tools along the way to be job-ready.
Bear in mind that picking up Vanilla JS is just the first hurdle, to get a decent job I’d highly recommend learning React, Vue, or Angular after.
You won’t have mastered the language at this point but you will have built some personal projects and started getting a good grasp on the language.
From experience, you aren’t going to be able to bring your A-game for 8 hours a day so it is likely going to take much longer.
A lot of people don’t end up finishing the certificates and instead dip in and out to use other resources along the way. So overall it takes considerably longer.
- Understand and grasp basic concepts
- Explore parts of the language on your own
- Create small projects
- Establish the right questions to ask on Google and Stack Overflow
- What is your previous experience with programming?
- How much time can you dedicate per day to learning?
- Do you currently work full time?
- Do you have a network of others who can keep you accountable?
With more time to spare you can cut this down considerably.
Learning one of these will take another few months to get good enough to land a job.
The courses are both awesome. They have 52 and 68 hours of video respectively. So that is more than a week of video to take in without even typing a single line of code.
The reason I point this out is to show that nothing comes quick. The entire process is going to take a considerable amount of time and effort.
Some are free, some are paid. I found the best way to learn is to pick up a couple of online courses while learning the basics. A structured course allowed me to set aims and keep focused.
Other people prefer the Bootcamp root so I have included a few links to major online boot camps.
- Udemy JS courses – Great for learning in your own time
- freeCodeCamp – Incredible free resource to grasp the basics
- Code Academy – Get for those wanting more structure
- Odin Project – A fantastic alternative to freeCodeCamp
- Lambda School – Fantastic online Bootcamps with a great reputation