JavaScript has had a decade of intense churn and has gone from a supplementary web programming language to a pillar of development. What can you do about it? The first rule is: don’t panic.
Twenty years ago, JavaScript was something you used to make more interesting buttons. It was “not Java, the other one”-a fun tool that let you put interactive elements on a page. A lot of serious software developers turned up their noses at it and said it was a toy and a passing fad.
Today? It’s the most popular scripting language in the world: Netflix runs on node.js; IBM and PayPal run their web framework on JS; you can run an entire JavaScript stack. 95.1% of all websites use JavaScript, 30% of 2018 developer job postings wanted JavaScript. It is an inescapable part of our web ecosystem. If you’re coming back after a long time away or looking to get into it for the first time, the scope of JS can be truly intimidating. What can you do about it?
The first piece of advice is don’t panic. It seems like a new framework comes along every day to knock the old one down, but really, the old stalwart frameworks and libraries aren’t going anywhere: jQuery is pretty ancient, but it still powers a huge chunk of the internet and you’re not going to have trouble finding work with it. Sites wrote using older JS still need maintenance, repair and even development. There’s been a lot of talks that Angular and React are on their way out but it seems naive. Vue is certainly becoming more popular, but you don’t need to worry that something is going to become obsolete by the time you’ve finished learning it.
Developers love to ask “is [whatever framework I’m learning] still relevant in current year?” and it creates an environment where we’re panicking all the time about finding the next big thing. I’m not going to stop you from looking forward, but it’s not the end of the world if you’re not working with the hottest new framework.
The second is to ask questions. Anybody who has been a developer for long enough knows that this industry is as much an education as it is a profession—where learning all the time, and it’s part of what makes us good at our jobs. Especially with a complex and ever-evolving ecosystem like JS, everybody else in the room has needed to ask for help at least once. There are CTOs with five decades’ experience who probably still need to check the docs for meteor.js before they go into a meeting. Whether you’re consulting your colleagues or the internet, it’s a normal part of the process and one you should engage in often.
The third, and probably most important piece of advice, breaks things. As the old chemists’ saying goes, “experience is measured in equipment ruined”. Don’t break your client’s project, of course, but one of the most important things a developer can do to improve their skills is to fire up their code editor and experiment. It’s inevitable with a system like JS that things are going to go wrong: it’s best they go wrong in your personal test environment, so you can stop them going wrong on your client’s site.
Which is good advice, but doesn’t answer the most pressing question: where do I start? Well, let’s go through some of your options for frontend development:
- Angular is Google’s JS framework. It is distinct from AngularJS, which is a deprecated version with a different architecture. Both are full frameworks with a robust set of features.
- React is what Facebook is using. It’s really more of a library and view layer, but there are third-party options that let you use it as a full framework.
- Vue.js is the new kid on the block, rapidly gaining popularity. It’s elegant and powerful, but there aren’t a lot of job openings yet so you’re not seeing a lot of developers working in it. This will likely change in the next few years.
And for the backend:
- Your first port of call must be Node.js-it’s an interpreter that lets you run JS outside of a browser. Almost every backend JS framework, tool or application runs through Node and you’re going to struggle without it.
- Express.js is a web application framework that synergizes well with other backend JS apps. It requires Node.
- Meteor is a tool that lets you perform the synchronous cross-platform deployment. It should go without saying, it requires Node.
Stepping back into JavaScript can be intimidating. Over the last 20 years, it has morphed from a web designers’ toy into a pillar of development. I hope I’ve helped assuage some fears about the scope of things. JS is huge, but it’s still JS: your function calls are still function calls, your variables are still variables. Don’t panic, ask questions, break things and finally—and probably most critically—welcome back.
If you feel like you need professional help with your Javascript development, don’t be afraid to get in touch with our team at CodeClouds. We have specialists in AngularJS and all sorts of jQuery experts who can help put you on the right path. We have four locations: Kolkata, Fort Wayne IN, Sydney, and Wellington, and we’re always looking for staff. Get in touch today and see if we can help you take your JS to the next level.