After you're done with the most theoretical part, there are some great resources out there for you to really get started on JavaScript. In order to make it easier, I’ve put together some of the best tips and resources so that you don't have to go through many others that are not as helpful.
The first resource on the list has to be Codecademy’s JavaScript Tutorial. The thing I love about Codecademy’s courses is that they are very practical and interactive.
For beginners, this is one of the best starting points. In this course, you will learn about data types, structures, functions and object-oriented programming in the context of ES6. However, to be able to take the most out of this course, a basic level knowledge of HTML and CSS would make some of its parts more meaningful and comprehensible.
Mozilla Developer Network is a huge database full of information about open web technologies, including HTML, CSS, JavaScript and APIs.
Even experienced developers often come to MDN, and if you’re planning on becoming serious about web app development, you should keep this in mind. It provides multiple guides, from beginner to expert levels, but a good starting point is to go through their learning pathway for JavaScript.
Eloquent JavaScript is a book that raises some controversy. Some developers say that this is a great book for beginners, while others disagree. The main argument against the book regards its ever-changing pace. There are parts in which it's very slow and carefully teaches about the language, and others in which it goes way too fast.
However, there's more good than bad to it, as the author keeps the book updated with all the latest JavaScript developments, turning it into a great resource for any level. It also covers everything about the language, the browsers and some backend with Node.JS. My recommendation here is to read this book alongside with another course, using it as support material.
Code School was one the first resources that I’ve used to learn web app development right after I left the university. Every time someone talks about Ruby on Rails, it still comes to mind the intro from the Rails for Zombies course (also a great resource, just not for JavaScript).
They don’t give away as much free content as the other resources on this list, but it's still worth giving it a try. Their teaching method is a mix of videos and interactive coding, which is great for more visual and audio learners. Also, if you feel as it's going too slow, you can always speed up the videos. On their JS path, you can find beginner and expert content and if you’re not sure where to start, you can take their skill test and get a recommendation.
Egghead has some of the best resources for JS these days, made by web app development professionals and open source contributors. However, Egghead is more focused on advanced content and I would only recommend taking their courses after finishing a couple of the others listed before. The best about their courses is that they are straight to the point. You will find bite-sized videos that pack a lot of information in a fraction of the time.
Going through tutorials and books can get boring and sometimes you even get the feeling that you're getting nowhere. So, alongside these resources, I'll share a few more tips to really get it going with JavaScript.
It can be a simple to-do app, a mini-Twitter or a personal page, but try to get something done from scratch. That initial struggle with the syntax, going back and forward with new documentation, gets passed through configuration errors... All of it will make you improve faster. The sooner you get familiar and comfortable with the language, the better.
Developers tend to be perfectionists. They always want to deliver the best code with the best practices and patterns. However, when you're learning, don't get too annoyed if you can't do everything "right away". With experience and further knowledge you'll find yourself finding solutions to those problems naturally and come back later to refactor the code.
Look into known open source repositories. Reading other people's code is one of the best ways to learn. Check the way experienced developers solved problems similar to yours. By doing that, you'll probably find ways to get past those problems in which you haven't done it "the perfect way" before.
Ask other developers to review your code. Having other people giving you tips is a great way to improve fast. Talking about code with others is a way of absorbing a lot of information in a small amount of time. So, if you have someone with whom you can share code tips between each other, do it as much as you can.
Don't be afraid to make questions. I can't imagine my life as a developer without StackOverflow. It helped me so many times in so many different ways that I have to say that it is one of my greatest teachers. If you need to ask anything, just do it on StackOverflow. In no time, you will have someone from its awesome community answering to your questions.
Similar to what you should do on every new field you're trying to master, just challenge yourself at all times. Roll up your sleeves and start working on it. In no time you'll be building some cool apps in JS. Also, there's a big demand for JS developers out there that companies can't fill up. So believe me, it's worth it!
Found this article useful? You might like these ones too!
Experienced in backend systems for the web using state of the art technologies. Full stack developer & product maker. Ruby/Rails, NodeJS, ElectronJS.
Web developer and football enthusiast. Plan to travel around the world and meet new cultures. Can be easily found listening to music or pretending to be a football manager.
People who read this post, also found these interesting: