Development is one of the fastest changing industries on the planet. There’s always new languages, frameworks, libraries or tools coming out.
Of course you’re not expected to know all of these, but at one point or another, regardless of your current interests / stack, you will have to learn something new. Hopefully that excites you (then you know you’re in the right field!)
Learning how to learn is the art of being able to quickly pick up new skills as they come along - which will obviously be useful throughout your entire coding career. And chances are you’ve heard this advice before, but you might be wondering how to actually develop the ability to learn new things efficiently. So here’s my take on it.
Figure out how you learn best.
Some people learn best from reading books, which tend to be very in-depth and include a lot of context. Others learn best from video, appreciating the visual elements and being able to follow along. Some learn by reading documentation and source code. And others learn best by just jumping into the code and failing along the way.
There is no right or wrong way. It’s all individual. What matters is that you find the style that works for you (and might even be a combination of all of the above). I prefer watching videos to get the overall idea behind a new framework or library, then jumping into the code to experiement - consulting the documentation along the way. This works for me, but might not work best for you. You need to find your own way.
Focus on learning one thing at a time
Whichever way you prefer to learn, it’s key to narrow your focus to 1 thing at a time. That’s why I recommend front-end developers to start with the basics of HTML, then move to CSS, then JavaScript. If you start with something like React right away, you’re learning too many things at once. You won’t know where the JavaScript ends and the HTML begins.
So when you then want to learn React, make sure you understand the others first. And when you do, try to focus purely on learning React. Not NextJS, not Styled Components, not Framer Motion all at once. It’ll be much easier to learn those later in isolation.
Trying to learn too many things at once leads to confusion, and the skills will start to blur together. You’ll miss the fundamentals of the thing you’re actually trying to learn because there’s too much stuff going on.
Actually learn the thing.
When you’ve decided on a particular thing to learn, it’s time to put in the work. Whatever your method is, start by recognizing that it will take time. There’s no shortcuts, but here’s some advice that will hopefully speed you up:
Grind it out. When you’re learning, you need to get your hands dirty. You need as much practice as you can get, and as many hours as possible to allow your brain to obtain the information. Write as much code as possible.
Make mistakes. By coding a lot, you will make mistakes. This is good! By making mistakes and figuring out why, you’re learning the ins-and-outs of what you’re trying to internalize. And when you’re learning, you won’t need the code for anything else, so it doesn’t matter that it’s bad or has issues.
Ask questions. When you get stuck on something, ask around! Either in person at your job, or online. There’s helpful people all around you. Use their knowledge to your advantage.
Sleep. This might seem weird, but sleep is one of the best teachers that exist. When you sleep, processes are happening in your brain that moves information you’ve just learned from your short-term memory, onto the “hard drive” that is your long-term memory. By sleeping, this process also frees up your short-term memory to learn even more on the following day. It’s why students who cram everything before an exam tend to forget it all a week later. They don’t allow the process of sleep to do its magic.
Mentor others. Especially if you’re not an expert. When you’ve just learned something, you’re in the unique position of being able to understand the problems that others are facing. You know the problems they might encounter and the issues they will run into, because you were in their shoes not long ago. This makes you super qualified to teach what you’ve just learned to the next person. And as a side benefit, you’ll learn it better by forcing yourself to teach it too!
Hopefully I’ve convinced you that learning how to learn is essential to be a good developer - and it’s something you’ll reap the rewards of for many years. And with these pointers, you should be better equipped to go out there and pick up any programming language, framework or library that your heart desires.
Today’s sponsor
Like I mentioned, one great way to learn is through books. Books have the advantage of being able to guide you from scratch all the way to a desired outcome, where normal articles or videos generally can’t be as detailed or tend to miss context. That’s why I’ve partnered with Packt Publishing to promote one of their recent books:
JavaScript from Beginner to Professional: Learn JavaScript quickly by building fun, interactive, and dynamic web apps, games, and pages
This book is a great resource as it’ll take you all the way from setting up your IDE and using the browser DevTools through beginner, intermediate and advanced JavaScript concepts. The practical exercises also make the learning process entertaining and will give you plenty of projects to show off in your portfolio.
So if you’re into learning from books and want to greatly level up your JavaScript skills, check out the book:
Thanks Madds
Very helpful. We need more such article in future too.