Learning programming is not an easy thing to do. Although it’s easier than ever to learn tech skills online these days, it’s one of the most challenging career options you can choose.
But at the same time, learning how to code is extremely exciting and empowering. You can practically learn it from scratch by yourself and land a job as a developer surprisingly quickly.
To help you get started off on the right foot, I’m walking you through 17 things I wish someone had told me before my first programming lesson. I think this list can save you from a bunch of headaches and frustration along the way.
Let’s dive right in!
Here are a few related articles for you:
- The Best Websites to Learn Programming for Beginners
- 14 Popular Programming Languages and Their Uses Explained
1: Learn discipline
If you want to learn how to code by yourself, you will need both motivation and a good amount of discipline.
Discipline is the art of getting things done without motivation. It is about being productive and moving forward even when you are feeling like doing something completely different.
Thus, even though feeling motivated is extremely important for learning programming, discipline is even more fundamental.
After all, motivation will only get you going on days when you feel like it. Discipline, on the other hand, will keep you going no matter what is going on.
A word of warning is in place with discipline though: do not be too hard on yourself. Just have fun with coding and be kind to yourself!
Simply put: push yourself, but don’t force it.
2: Know your “why”
Now that you are armed with tons of discipline and determination, it is time to figure out why you are learning to code in the first place:
- What is your #1 motivation to start learning?
- Why do you want to learn tech skills?
- What will keep you motivated when things get difficult?
Your “why” is the reason behind your entire learning journey.
It’s how you want your life to be after you learn to code.
Now, I know most beginners think about financial goals first. And while it is a nice thought to see yourself making six figures as a developer, that should not be your primary motivation.
Trust me, it is nice to make money but it doesn’t keep you motivated to learn in the long run.
Thus, think about things like:
- Achieving more freedom in life
- Working flexible hours
- Spending more time with friends and family
- Providing more for your children
I mean, most people never get the chance to decide when and where they want to work. They spend decades working 9 to 5, having a few weeks of paid leave each year. And when they retire, they can barely make ends meet.
As a developer, you have all the freedom in the world – especially if you decide to start freelancing. You need to work hard to become successful, but anyone can do it!
3: Have a clear goal
Now that you know your “why”, you should think about where you want the journey to take you.
Do you have a clear idea about what you wish to build with programming?
Knowing it will help you stay focused. And while you are learning, you will also notice which ideas and solutions you can use for your future projects.
Thus, figure out where you want to go with programming right now. Then, think about the steps you need to take to get there.
Based on what you understand now, take time to make a step-by-step learning plan.
Pick one specialization you wish to learn first, such as:
- Web development
- Game development
- Software development
- Data analysis and machine learning
When you find an interesting area, you can narrow down your options more easily.
For example, let’s say you want to learn front-end web development first. There are a few essential tools you need to learn in a certain order to get started:
For more details, check out my post about how to become a front-end web developer.
4: Make mistakes and learn from them
You are going to make mistakes as you learn programming, trust me. But as a great wise woman (my mom) once said:
“Anyone who isn’t making mistakes isn’t making any progress either.”
And this is so true.
Some of us have the tendency to feel discouraged by the smallest mistakes we make. But mistakes are the most valuable learning opportunities you can have!
If you make a mistake, it is your brain that comes up with a solution. And that clever brain is going to remember the mistake and most likely not repeat it again.
5: Don’t try to understand everything
Stepping into the world of programming can often feel overwhelming.
There is new terminology flying at you from every direction, all the time. And whenever you start to look for an answer to one question, you only end up with 5 new ones.
I remember how difficult it was at first to keep track of all the jargon and the fundamentals of how programming works. Most of the time I was reading about what all these new words meant, not understanding half of it.
But as the days and weeks went by, I slowly started to see things more clearly.
The bottom line is: when you start learning programming, don’t try to understand everything you read.
You will most likely finish a couple of small projects before you start to understand what you are actually doing and what is happening behind the scenes. And that’s perfectly okay!
When you feel like you are ready to take a closer look at how programming really works, I recommend you learn the basics of Computer Science. It will make your learning much easier and faster in the long run.
6: Don’t look for the perfect solution – good enough will do
When you start building your first small programming projects, be easy on yourself. Don’t set your expectations too high.
Remember: nobody is expecting anything from you when you’re writing your first programs.
As long as your programs work, don’t worry about writing perfect code. You don’t have to find the perfect solution for everything right now.
What matters the most is that you understand what you are building and how to use a programming language to get there.
If your code does the job, it is good enough.
The more you practice, the better you will become. And you can always come back to your older projects and improve your code if you want to.
In fact, it can be really helpful to review your older programs every now and then. It will help you see how much progress you have made.
7: Commit to a schedule
Nothing will keep you going better than a regular learning routine.
When you have a clear idea of what you wish to build, come up with a weekly learning schedule.
We are all different, so I can’t give you a set schedule you should follow. Just be mindful of the time of day when you learn. If you feel like your brain is active in the morning, try to use that time for learning.
All that matters is that you commit to your learning and your goals.
It can be difficult at first, but building a routine out of it will make things easier for you, trust me.
8: Take breaks from coding
I mean short breaks. They will help you take a step back from what you are doing so that you won’t lose sight of the big picture.
That being said, keep practicing every day but avoid sitting at your computer for several hours straight.
I’ve found the Pomodoro technique with 30-minute learning intervals really helpful:
- Focus on learning for 25 minutes
- Then, take a 5-minute break
- Rinse and repeat
Use those 5 minutes for whatever makes you feel good. Stand up, do some yoga or stretching or head out for a short walk around the building.
Your body loves to move, so give it what it needs. Your brain will thank you later, too.
9: Find a mentor if you can
Teaching yourself to program is difficult as it is. You will need to wrap your head around heaps of new terminology and learn how to apply what you learn to real-life projects.
With so much going on in your head, you will probably feel confused and overwhelmed at times. And that is when you start to feel less confident and motivated.
The best way to clear your head is to talk to a real person. And I mean in person.
Of course, it can be difficult to connect with like-minded developers depending on where you live.
You can start by looking for a coding group in your area.
Twitter is a good platform to search for one (come say hi!), for example.
Another great place is freeCodeCamp’s Study Group Directory.
10: Finish your projects
I speak from my own experience here. I used to get distracted with new project ideas so easily that it almost drove me crazy.
When you start learning how to code, you slowly become aware of all the possibilities of what you can create.
Also, you realize how the apps and websites you use daily work under the hood. And when that happens, it is an awesome feeling!
However, no matter how excited you feel, always finish your current project before starting the next one.
If you keep getting good ideas, simply write them down in Trello or draw a mind map with your ideas on Coggle, for example. That way, you don’t have to worry about forgetting any of them. Plus, you will never run out of ideas for future projects.
11: Get some rest
No matter how much fun coding can be, remember to give your brain some rest, too. I remember staying up all night when I started learning Python because I was enjoying it so much.
But the truth is:
Too much fun can be exhausting, too.
Stepping away from your code gives your brain some time to solve a problem by itself. If you sit at your computer for hours while feeling frustrated, your brain won’t have any time to come up with a solution.
Hence, getting some rest is especially helpful when you face a roadblock with a project. Get some sleep and you will squash those bugs tomorrow in no time.
And think about it: while you are napping away, your brain is doing much of the work for you!
12: Beginners can’t know everything
If you are just starting out with learning how to code, it is easy to reach for the stars, become frustrated, and lose your motivation early on.
Remember that everything you are learning is completely new to you. Acquiring new skills and becoming a professional developer takes time!
Therefore, learn one thing at a time and keep your head up high when you face a challenge. It will help you grow even further.
13: Don’t compete or compare yourself to others
Comparing yourself to others is perfectly normal. It is part of human nature. You know, survival of the fittest and all.
But learning programming is not about survival, it is about becoming better at something and learning new skills.
If you start comparing yourself to others, you will just hurt your confidence and motivation. It’s just too easy to look at what more experienced developers are creating and feel like it’s going to take forever to become as good as they are.
Therefore, remember to focus only on your own learning journey. Keep track of what you’ve learned so far and follow a study plan step-by-step.
As long as you’re taking time to learn programming every day, you are making progress and you will become better at it. That’s all that matters!
14: Be prepared to adapt
In the world of tech, there are not too many constants. One of them, however, is that things are always changing.
Thus, you need to be open to changes, accept them, and adapt yourself to new ways of solving problems.
Also, remember that in some fields of programming the evolution of tools and technologies might be quicker than in others.
15: Take pride in your achievements
Whatever it is you are focusing on, remember to look back at how far you have already come.
If you followed the points above, you should have a clear goal you are aiming for. This may sound silly but don’t focus on that goal every day.
You will get there eventually, but not today. As long as you commit to your process, you will see results at the end.
Thus, focus on the progress you are making, no matter how quick or slow. With every coding session, no matter how big or small, you are learning and getting better.
I know it is way easier to look ahead and focus on how much you still need to learn. But trust me, looking back is sometimes a much better idea, especially when the road gets rocky.
So, make sure you take some time to be mindful about how much you have learned already. It will work wonders on your motivation!
16: Use paper when you are stuck
This is something I should have learned years ago!
Whenever I get stuck with a coding problem, I get my pen and paper and write down the exact steps my program needs to take to do its job.
I usually start with the end in mind. What do I want my program to do exactly? Then, I work my way back towards the beginning step-by-step.
When I don’t have to think about syntax or formatting my code, I can simply focus completely on the problem itself.
This gives the brain more room to think without having to worry about how a programming language works.
I’m a visual learner, so drawing mind maps and writing stuff down on paper helps me visualize all the details. It just makes it easier for my brain to process everything.
What methods can you use to help your brain learn new things?
Use whatever tricks and hacks you can to organize the input you’re giving to your brain:
- Take notes
- Draw tables
- Use spreadsheets
- Write lists etc.
Read next: 10 Smart Tips to Learn to Code Faster
17: Comment your code
Writing clear comments in your code is going to help not just you but others reading your code as well.
Remember that you will most likely write several useful programs that you can use over and over again in the future.
Commenting your code will make it easier for you to find the correct piece of code and to see whether it needs to be adjusted.
Commenting does not need to be a complicated process. You do not have to explain your code. Instead, try to explain why you wrote a specific piece of code in that way.
Also, if you are trying out something new with your code, make sure you include your ideas in the comments.
Final thoughts: Helpful tips for learning programming from scratch
Now it’s your turn! Did you find any helpful tips for learning programming in this article? Drop me a line in the comments below!
The most important takeaway is here:
If you are new to coding and programming, just take it one step at a time. Be mindful of how much time you can dedicate to learning and use learning strategies and tips that support your own learning style.
As you go along, make sure you track your progress. And every now and then, remember look back at how far you’ve come.
At the end of the day, learning programming is all about knowing why you’re doing it in the first place. Therefore, before you even start your first coding course or tutorial, ask yourself:
- Why am I doing this?
- How do I want my life to be when I know how to code?
Being aware of what motivates you to do this is a great way to maintain your focus. It’s a trick I use for everything I learn and build with code – and it works every time!
Now, head over to my master list of 120+ free places for learning to code to get started today!
If you liked this article with helpful tips for learning programming, please share it with others! Thanks!
And don’t forget to grab my free e-book with even more tips to get started with learning how to code!
Here are a few related articles you may want to read: