I am a backend developer
I consider myself an experienced Drupal and PHP developer. I have a masters in computer science and before I started working with web I was doing enterprise Java for a couple of years. I have a good grasp on object-oriented programming and design patterns as well as a love for writing clean and simple code — something that can only be done by understanding the programming language and the task at hand well.
Then about 4-5 years ago I started realizing that maybe I was missing out. I got more interested in playing around with JS and I dabbled with some smaller stuff on sites I was working on. I started using Gulp and by now I thought of JS as a super neat thing both in the browser and in other contexts. I got into Elm and thought that was super cool. Probably mostly because then I didn't actually have to write JS. No, seriously - Elm is pretty awesome, but that is another post sometime. I've also played around with backbone.js a couple of years ago and more recently vue.js.
Oh, the shame
But I'm not.
I feel like I am always looking stuff up or just stopping because I have to go to Stack Overflow to find answers for the simplest things. I am not in the jQuery hater camp, but I think I blame jQuery a little. I started to dabble without understanding what I was doing. I was using jQuery and I found a lot of example code that I would copy and modify to my needs.
I never actually took the time to understand the basics of the JS language before I started doing cool shit with it, using libraries or frameworks for all kinds of things. Over time I got things done, but got more and more embarrassed over my lack of basic understanding.
In some areas, what makes JS different from most other languages I know, is that apart from being a programming language, it is also an interface to another piece of software: the browser. I feel like that is an important point. Learning to understand that interaction is super important and I don't have that good of a grasp on it.
So what am I going to do about it?
I also think I'll try to blog about what I learn a little. By now I have completely outed myself as a retro-js-noob, so I feel a lot safer blogging about stuff that I am sure a lot of people are wondering about.
Why am I writing this?
That brings me to my final point of this blog post. I am convinced that there are a lot of people out there that feel like me. They have used JS in some capacity for long enough that they should be a lot better at it than they are, and now it is just getting embarrassing that they have so many shortcomings. So if you are out there feeling like that, know that you are not alone.
If you have any tips or resources that you think would be useful to someone like me, please share them!