Off and on with JavaScript
I just completed Bianca Gandolfo's "JavaScript: From Fundamentals to Functional JS" on Frontend Masters and I can safely say: I learned something. I learned more during this 8 hour class than the 80 plus hours of coursework I've taken specifically on JavaScript thus far. I think her teaching style was perfect; she went slow enough and asked questions often, in a Socratic method, making sure everyone had a full understanding of the concepts. During these question and answer sessions, I found a lot of my personal questions being answered. Most of the time, these questions allowed Bianca to re-word the explanation of the concept and go a little bit deeper. She also spent quite a bit of time breaking built-in methods of JavaScript down and going through how they work under the hood. This gave me a much deeper understanding of how these methods worked and what they really did.
I'm still not going to say that I've mastered JavaScript, or even the concepts covered in this course, because this really only covered a small corner of the JavaScript universe. There were some concepts that I finally understood and some, like reduce, that I'm still mystified by. This language is going to take years for me to fully understand, and I just have to accept that. I've talked about this before, but there are a lot of parallels between JavaScript and golf. It can be very frustrating to learn how to golf; most beginners feel like they should be better than they are within a few weeks or months. Golf has an incredibly steep learning curve; it takes years just to become decent, and without proper instruction, you may not even reach a level of decency. You have to have patience that eventually learning the proper techniques and hours of practice will get you to where you need to be. I've been playing golf for over 20 years now, and I still learn new things about my swing every time I play.
I think the level of difficulty of this language, or probably learning any programming language, is what intrigues and excites me. If it was easy, everyone could do it and it would no longer be lucrative. If you can put in the blood, sweat, and serious tears, you will end up in the top 10% of developers in the world. You can become one of the 90% with a rough understanding of these concepts, and I'm sure there are a lot of developers who spend their entire careers avoiding the deep end. I still have a long way to get to that top 10%, but if I keep putting in the work and have patience, I should eventually get there. It's not unattainable, it's just difficult.
Until tomorrow!