I started out in software development as a self learner, using courses from YouTube, FreeCodeCamp, TheOdinProject and a lot more others. It's harder as a self learner because it's left to you to figure out a path, find a mentor, or even know what tools or software to use. Well, there are probably 1001 tools that can help you get better and you might get lost trying to figure out which one works best. I've summarized the best tools that I've used and currently use that help me daily, so I've got you covered.
They are:
1. StackOverflow
You've probably seen it as a joke somewhere on the internet where developers go to copy code, but in reality it's a lifesaver. It's basically a question and answer site, where developers post issues they have with their code (bugs) and other developers who may have the solution can respond to them. You can either post your question and get an answer, or search the site for solutions related to what you might be facing.
2. GitHub
Yes, GitHub. It should be quite obvious right? It might actually surprise you how many developers do not use GitHub (or another version control equivalent) for their projects. For one thing, it helps you to 'store' your code for future references, collaborate with other people, and can even serve as a portfolio you can send to recruiters.
3. W3Schools
This is a very popular learning platform among beginners. What makes it stand out is the fact that it offers a lot of step by step courses ranging from Web Development as a path, to JavaScript, to PHP, and even CyberSecurity. It contains code snippets and a browser-based code playground, where you can easily find out the hows and the whys. You can also practice what you're learning on this playground. The best part? You can learn individual courses for no charge!
4. Visual Studio Code
I'm still not quite sure why this isn't the first on the list... but it's super useful.
The editor accepts more than 15 programming languages, including frameworks and libraries like Vue.js, React, Laravel, e.t.c.
Since both VS Code and GitHub are both owned by Microsoft, they're well integrated. There are multiple ways to create, push and make changes to a remote repository without leaving your editor, or even using the terminal/command line. Also, you have access to abbreviations provided by Emmet to help you write codes faster.
5. Communities
This isn't a tool, but it definitely helped me improve and I think it can do the same for you too. Joining active communities where there are always people to assist, encourage and even crack jokes goes a long way in increasing consistency, growth and fosters meaningful connections.
Some communities you can join are:
- Hashnode's discord server
- Google Developer Groups
- Google Developer Student Clubs (if you're enrolled in a university)
- SheCodeAfrica (a women in tech community)
- Devcareers.io
If you enjoyed reading or found this article useful, you can share it to others you think would benefit from it. Oh, and also leave a reaction so more people can access it :