Have you always wanted to teach yourself coding but felt overwhelmed by the number of languages, technologies, and details?
One moment, your code is working well. It’s magical! The next moment, you are lost and totally confused. Your code doesn’t work anymore and you can’t figure out why.
Yes, coding can be pretty difficult. I get it.
However, the good news is that you can train yourself to become the developer that you always wanted to be. In my decades of teaching and training, I have seen a lot of people go from beginner level to professional developer.
If they can do it, so can you. In today’s post, I am going to be sharing with you seven tips to teach yourself coding, even if you’ve never coded before.
I will also be recommending tutorials, books, and online courses that I believe you will find very helpful. Don’t worry, these are free resources!
Whether you want to become a software engineer, a front or backend developer, etc. I have got you covered.
With that said, here is a quick rundown of the tips that I will be covering in this post:
Let’s get right into it.
If you are like most new developers, getting started can be overwhelming. Which language should you start with? Which route should you follow to achieve your dreams of becoming a developer?
To help you answer that question, let me tell you a story.
Several years ago, a new programming framework was released to the programming community: Ruby on Rails. It took the world by storm.
It was created by a veteran developer named David Heinemeier Hansson. He built this framework while working on a project management tool called Basecamp.
After finishing work on Basecamp, David officially released the Ruby on Rails as a free, open source tool in 2004.
This new framework created so much buzz that many developers started to jump on it. It was for a good reason: it made creating web applications very easy. It also offered developers unlimited customization options.
Aspiring developers were also caught up in the frenzy. At that time, it seemed everybody wanted to learn Ruby on Rails. It was the future of web development -- or so they said.
However, there was a problem. While bootcamps and online course developers were churning out Ruby on Rails material, real-world adoption of the technology was lagging. The reality was that despite all the hype, very few people were actually adopting Ruby on Rails for their enterprise projects.
Everyone was talking about Ruby on Rails, but few were using it. People who choose Ruby on Rails as their tool of choice often had to learn other technology stacks to find jobs.
For Ruby on Rails, it’s just about 3,500.
What is the lesson of this story? Don’t always join the bandwagon: learn what is in demand.
If you are going to teach yourself coding successfully, it’s very important that you use the right set of tools. It is just as important to choose the right toolset, as it is to select the right languages to learn!
However, what tools should you actually learn, since there are so many out there? Finding the right ones can be overwhelming! My advice is to learn tools the companies you are looking to work for use.
Employers tend to prefer candidates who are comfortable - or at least have some experience - with the tools their team uses. Therefore, having some mastery of those tools will give you a leg up in the hiring process.
What if you can’t really figure out the tools your prospective employer uses? That’s not a problem. Here are the ones that I personally recommend. They are the basic tools that every developer needs to know:
If you haven’t worked with GitHub before, now is the best time to set up an account. Github is an online, social version of the popular Git code repository and version control tool. If you are new to this type of tool, let’s define the terms:
Code repository: A repository is a place where you store digital stuff. You can store just about anything in a code repo (a common abbreviation in the industry). People most often store code, but they also keep assets like images, audio files, and animations in their repository.
Version control: When working on collaborative projects, developers often make changes to the code base of that project. When changes are made, conflicts in code versions can cause issues. Git makes tracking and controlling these changes to the code base easy.
What does GitHub add to the standard Git code repository? GitHub is part code repository and part social network. It allows users to share their code with others, as well as view repositories that others have created.
Developers often come to Github to share their code with the world and contribute to projects that belong to other developers. In the development world, most code is open-source, which means that anyone can use, alter or publish it.
In order to successfully teach yourself coding, learning how to use Github is important because it’s a skill that most employers will require.
I would, therefore, recommend that before you write any code, first open a free Github account. As you work on projects, push all your code to your Github account. Your code repositories become a record of your learning and progress, as you acquire your development skills.
When starting out, most new developers make the mistake of wanting to learn too many different technologies. You don’t need to learn three different languages, several libraries, and every possible development tool. That is actually a bad idea!
I always tell newbie developers to focus on learning one language very well first, before even thinking of picking up another one.
My recommendation is to learn one language well.
Even though I recommend learning one language at a time, there are exceptions to this rule.
The same is true if you want to become a PHP developer: you need to have practical knowledge of both PHP and SQL, which is a database programming language.
In programming, “Vanilla” refers to the base - or the fundamentals - of that programming language, unaided by framework or libraries.
The road to becoming a developer can be discouraging. Self-teaching should not mean learning alone. I highly recommend finding a like-minded group that you can work with for support and encouragement.
How do you find a support group to join? Here are a few suggestions:
✅Look for local coding meetups in your city: Google will really be helpful here. Just Google up “coding meetup [your city]”.
Example: “coding meetup Los Angeles”
✅Search on Facebook
Sometimes, physical meetup can be impracticable. If that’s the case, virtual meetups can suffice. One good place to start your search is Facebook.
If you are having a hard time finding one on Facebook, you can check out this resource from FreecodeCamp - they’ve compiled a list of local meetup groups you can join on Facebook.
While searching for a group, also look for an accountability partner. Accountability partners hold each other responsible for reaching certain learning milestones. If your learning goals are only known to yourself, you're less likely to reach them. With an accountability partner, you have another person who knows and cares about your goals. When someone else is holding your feet to the fire, you are more likely to succeed.
One of the struggles you will very likely encounter in your self-learning journey is remembering code syntax. Even elite developers face that challenge.
So, how do you overcome that struggle? Well, here’s the secret: Coding is an open book test. Most developers code with the documentation open.
Many experienced developers spend significant time on Google, looking up code syntax they can’t remember. You shouldn’t feel discouraged when you can’t remember the exact code syntax or structure. Understanding how to use the documentation to obtain the correct information is actually more important.
I always advise new developers to focus on knowing how a code function works, and not try to commit the syntax to memory.
In my 35 years of coding, I have never attempted to memorize code syntax or API elements. I look up the names of functions, the parameters functions require, and what the function returns. I have come to realize that the more you focus on the application of a code, the more you will automatically memorize that code - though unconsciously. So, stay focused on understanding how a code works and don’t worry about memorizing anything. Don’t overload your brain!
Before you go, I want to offer you the opportunity to sign up free training content.