5 Simple Reasons Why You’re Failing at Learning to Code

How to get “unstuck” today in 5 simple steps


Piero Borrelli

3 years ago | 4 min read

Learning to code is hard.

It’s damn hard. And I’m so grateful I went through this process already in my life. I remember all the frustrating times in front of the keyboard, feeling lost in a sea of resources.

But if this process was so hard for me, it doesn’t mean it has to be the same for you.

That’s the reason behind this article. To go back in time. Looking at what I should have done, and saving you thousands of hours of frustration and possibly losing the chance of changing your life by becoming a software developer.

You Don’t Have an Outcome

This is the first thing that I tell all the people who ask me for help on becoming a developer. Every time, the conversation goes on something like this:

“Piero, could you help me and show me how you became a web developer?”

“Hey x, that’s amazing; first of all, before we start, I gotta ask you: why do you want to become a web developer?”

End of conversation. You just met the first block to your learning path.

Before getting to the how you’re getting something, ask yourself about why you want it. Find a particular goal, write it down, create a sticky note and put that somewhere you can see it every day.

Don’t say: I want to become a web developer.

Say: I want to become a developer because it has always been my childhood dream. Or because I want to improve my salary and change my life. Or maybe, because I want to build this app idea, and I think it will change the world.

You Don’t Have a Plan

Now that you know why you want something, how are you going to get it? It’s easy; you need a plan.

Reverse engineer the process to get what you want. So if you want to become a web developer, open up Google and search for such a professional’s most requested skills.

Then, look where you can learn those skills. Find how much time you will need and make a temporal plan of action.

A plan is necessary because it keeps you on the right track. You stay motivated, and you build momentum very quickly when you stick to it.

You Pick Too Many Resources

I recently wrote an article about this here on Medium. Web developers are constantly bombarded with people who want us to buy their courses. Buy this React masterclass, this JavaScript ebook, this ace the coding interview toolset.

There is nothing wrong with creators selling their products. I do that too. But when you’re the client, you can’t possibly buy any resource you encounter on the web.

It’s a hard feeling to explain. You feel like you don’t know enough, and only if you spend more money on more resources, will you gain new skills.

But that’s not how it works. You don’t need 100 Udemy courses or a library full of dusty coding books you will never read.

Invest in very few selected resources for your learning, and focus on them. This will keep the stress of mastering the art of coding out of the door and your life a lot better.

You Don’t Practice Daily

Once I heard that Michael Phelps said he trains every day because if he loses even a single preparation routine on Monday, he will have to do double the job on Tuesday.

Never were some words more true about being consistent.

I’m not saying you should code like crazy every day and night. Still, it would be silly not to admit from me that, especially at the beginning of your career, being constant is crucial to learn a coding language.

You don’t need to be like Michael Phelps when it comes to your discipline; I’m not even close to that. A day off is allowed and necessary. But remember the importance which showing up at your desk consistently will have in the long run!

You Don’t Build Enough Projects

This is the biggest struggle I encountered in my whole career as a developer. When learning to code, the less you know, the more you want to gather resources to grow. Unfortunately, this behavior often sticks with you, so even after studying a language for hours, you still feel the need to do one more tutorial, one more course.

And in the meantime, your portfolio of projects remains empty, so you have fewer occasions to find your first job and a lower skill level than people who build a lot of things by themselves.

The solution? A project-based approach. Learn a concept, then write code. Get an idea about a fun app you could build? Write code.

Always build things because that’s how you grow and become a professional developer.


Coding is hard, but that doesn’t mean it has to be a crazy and frustrating process for you as it was for me. In this article, I’ve shown you exactly what I did wrong in my career. I guarantee you that, if you follow my advice and correct your behavior, you will immediately “unstuck” yourself and free yourself from failure and pain while learning to code.



Created by

Piero Borrelli







Related Articles