More and more people are sharing how they're learning one of the most popular languages at home. That's right, AT HOME. Not at a university, not in a boot camp, but at home.
How do they do it? And how can you also do it?
First, find resources to help you understand the basics. I'll recommend the best ones to start with below.
1. Find your resources (with 5 FREE recommendations)
So I recommend you start with the following:
MDN is a documentation repository for web development that's used by Mozilla, Google, Microsoft, and Samsung.
I recommend you don't skip this because it's more in-depth. You can use this to supplement the Codecademy course so you'll have a deeper understanding. Codecademy courses are great for beginners but they also tend to be too shallow for some people.
1.3 The Odin Project
Because of this, you also end up learning how to learn more effectively, which is essential in the long run.
I highly recommend this one because it's a proven resource - hundreds of students have gotten a job in tech because of it.
It's a preferable resource for those who prefer more hand-holding versus the approach of The Odin Project.
For more resources, check out the Full Stack Vault, a curation of high-quality resources on learning web development.
Before you could run, first you gotta learn how to walk.
I cannot stress this enough.
I see many people who start learning how to code give up early in their journey because they skip the basics. They jump into tutorials or courses that teach you how to build complex things.
- Variables and data types
- Loops and Iterators
- DOM (Document Object Model)
- DOM manipulation
- Events & event handling
- Object-oriented programming (OOP)
- Functional programming
Once you have a firm understanding of the basics, you can move on to more advanced concepts.
3. Apply the basics
They spend months (some even years) consuming resources, but they can't code anything on their own - even basic stuff!
This is called being stuck in tutorial hell. It happens when you don't build your own projects.
That's why I recommend The Odin Project as a resource because of its project-oriented approach. You will learn concepts and build projects as you go.
When you're starting out, try to do the things you've learned on your own, to see if you actually understood the concept.
If you're following along a tutorial or course and you don't understand what you're doing, Google the concept to get a deeper understanding. This will make sure you're actually learning something instead of mindlessly copying a tutorial's code.
Then write everything you've learned in your notes so you can reference them later.
After you've completed Codecademy's course, or if you're already familiar with the basics, it's time to start building something on your own. Choose a project that interests you, and start coding!
Try to start small with your first project. Then increase the difficulty as you move on to the next projects. Remember what I said about people giving up too early because they skipped the basics? It's the same with projects.
- Simple calculator
- Unit converter
- Currency converter
- Calorie tracker
- Online questionnaire
- Simple image gallery
As for advanced project ideas, let your creativity shine. Think of a problem you have in your life, and try to solve it yourself. Besides, many successful tech products came to life because the founders were simply solving their own problems.
If you get stuck, don't be afraid to Google for solutions or ask questions on Stack Overflow.
4. Learn to ask for help
Don't be afraid to ask for help!
Many people who are starting out don't ask for help or even use Google to get themselves unstuck, thinking that it's cheating.
But this is the worst mindset to have in learning programming. Believe me, even senior developers get stuck and ask for help themselves. Programming is a very wide field, plus it is constantly evolving and changing. Nobody knows everything!
So if you get stuck, there's no shame in looking up the answer online or asking for help from someone more experienced than you.
Finally, one of the best things you can do to learn programming is to find a mentor that can help and guide you.
That can be frustrating and it's one of the many reasons people quit before they reach a breakthrough in their learning.
The personal touch that comes with mentorship changes that, and it's a game-changer. Having someone who can take the time to look at your code, answer your questions and doubts, or simply motivate you when you're on the brink of giving up, is priceless.
You can also reach out to me at email@example.com or Twitter. My inbox is open if you're stuck on something and need guidance. I've already lent a hand to a few people who are just getting started, and you're also welcome to join them!
5. Stay up to date with new features and developments
And that's it!
You can do this!
If you have further questions or just want to connect, don't hesitate to reach out to me at firstname.lastname@example.org or Twitter. I was a beginner too and I'm happy to help when I can.
Other than that, happy coding!