As mentioned for the past twelve months I've spent a lot of my time learning Javascript properly. Like most front-enders, I had a pretty good grasp of jQuery but our switch in focus to apps, has meant a better knowledge of vanilla Javascript was necessary.

Jose Aguinaga's recent post on How to learn Javascript in 2016, got a lot of coverage from people on a similar path to mine, but I have to say I don't entirely sympathise.

Libraries like jQuery have created an expectation that learning Javascript should not be much more complicated than learning a declarative language like CSS or HTML. But Javascript is a functional, procedural language, that runs client-side AND server side. By its very nature it is always going to be complicated.

A little way along this journey, I'm realising that Javascript is going to make up an increasing amount of my brain over the years to come. From the perspective of a business owner, it also feels like it will be responsible for the majority of my income too. So I've decided not to grumble about the complexity of the landscape instead I'm focusing my attention on learning a few things really well and when the shit hits the fan, I don't look back at the good old days of building websites for small businesses, I look at the app I just built using React Native... and the corresponding pay cheque.

Ad endum

The one thing I would say is that the tooling on this journey does still feel primitive. Almost all the developers have learnt git via the command line and now use a GUI (like Git Tower) because life is too short. Similar tooling for task runners like Gulp and especially NPM would be a game changer.