Sam agreed to let me share his questions and my responses below.
How do you suggest I get there? I set aside at least 4 hour a day after work for learning. I am working on small projects that require me to use vanilla JS but is that enough? Or do I need something extra to help my learning plan.
I can’t speak to your personal learning style or anything, but… I’ve found that for me personally the best way to learn is by writing code.
Lots and lots of code. Messing it up a whole bunch, Googling and asking people questions until I get unstuck, and then doing it all over again.
At the time, jQuery still had a much bigger foot in the market, and I decided to learn that initially.
I gave myself a project challenge, at first something small. For example, “Build a little script that will show hidden content when you click a button, and then hide that content if you click it again.”
I’d write down on paper the steps I thought I’d need to do it, and then start writing, Google “how to do X” each step of the way. From there, it was, “Ok, what if I have multiple pieces of content, and only one can be open at a time (ie. an accordion)?”
I did that for a while until I felt pretty comfortable with jQuery-based DOM work (as in, modifying stuff in the UI). THEN, I challenged myself to convert those scripts over from jQuery to vanilla JS. A bunch more Googling, failing, fixing, and learning.
At each step, I was reaching out to folks I knew and getting feedback, asking for help on areas I just couldn’t figure out on my own, and so on.
You can absolutely teach yourself this 100% on your own.
If you want a little bit more help, my pocket guides are focused on some specific topics and activities. Each one dives into helpful methods and approaches, and then has you build a working script to put all the stuff you learned into practice.
It also gets you access to my private vanilla JS Slack channel where you can ask questions in real time with me and some other students.