The 6 Biggest Reasons Why You Will Fail to Learn Programming
In this post, you will learn the 6 biggest reasons why you will probably fail to learn programming. But don’t get me wrong, there is nothing wrong with you. These are just the biggest and most common reasons why people fail to learn to code.
But as always, I will not only leave you with the list of problems. I will give you advice on how not to let them stop you.
Let’s get started!
Reason 6 - focus on too advanced topics
When we are just starting, it’s so easy to jump into one of the fancy technology that many people are evangelizing over the internet. The problem is, it’s probably too advanced for the beginner. And you should build a strong foundation first before starting with these advanced topics.
I know it easier said than done. We are living in the age of information, and there is no much noise around. If you type any programming language name on Google, you will get results that direct you on the land mine for beginners, the same with gurus on Youtube.
These people will gladly put you on the land mine because they earn money while doing that. Furthermore, often the course they are selling how to code in X, is the only thing they know, so they can’t tell you which language is the best because they know only one.
When you are starting, you should definitely avoid and code preprocessors, anything that gets code X and render code Y, like ES6 and CSS preprocessors, if you are learning web development. Avoid them like the plague if you are a novice.
What works the best for web development, is start by learning HTML, CSS, and Javascript, and then learn any framework you want like React, Angular, jQuery, Vue, or jump straight into server programming.
Make things as simple as possible for you, so you will have much bigger chances to succeed.
If you want to learn more about starting to code for mobile app development, check out my post What Programming Language To Learn For App Development In 2021.
If you want more detail on learning to code for web development, check this post What Programming Language To Learn For Web Development in 2021.
Reason 5 - not enough coding, or no coding at all
Before you become a good coder, you have to give yourself a permission to be a bad coder. Every good programmer went through this process, sadly many of them, even after years, are still bad programmers.
The thing is if you want to learn to code by using tutorials, make sure the tutorial is made for someone with your level of knowledge, so you can put the new knowledge into practice immediately. You learn to code only by coding, there is no other way.
The right strategy is to read or watch tutorials and code along the way.
The easiest way to spot a tutorial that can be right for you is to search for particular keywords. Every programming language has some.
For web development, these are HTML5, HTML, CSS, CSS3, Javascript. And avoid any tutorial that contains anything else. There will be time for those later.
On the other hand, if you read a lot of tutorials, articles, watch programming gurus talking about how to do X, Y, and Z, and these topics are out of scope for you. You will not only not understand a single thing, but waste plenty of time.
Also, make sure you actually write the code. Reserve at least 30min, 1 hour every single day, and focus solely on coding, without descriptions. The more than better. When you do this for just a couple of weeks, you will get all the basics and beyond.
The little side note here. If you go into programming, coding should excite you. If you don’t enjoy any part of this process - other than money - maybe you should look for something else that will fit your preferences more accurately.
Reason 4 - chosen wrong technology
This is probably the biggest reason why I started IT Shark. I get so annoyed by these self-proclaimed gurus that you can find all around the internet, telling people that to be a web developer, you have to learn Python, or Django, or PHP, or Node.js or anything else, totally not related to the core of web development.
Web development is about building websites, so the technologies that are involved are HTML, CSS, and Javascript. If you know these three, then you can learn how to build an app to run on the server that will generate HTML for you, and you can code it with Python, Java, C#, PHP, C++, Angular, React, Vue, or anything else, it doesn’t matter.
And again, I know it’s very confusing at the beginning, we actually have to trust someone to move the needle. The solution is to avoid people who are trying to sell to the beginners’ things proclaimed as basics while indeed there are not. This is especially true with web development.
If you focus only on fundamentals and stick to it until you are good at it, you set yourself for success.
Reason 3 - technology-market unfit
We can say this is related to “choosing wrong technology”, but I want to emphasize the market importance here.
Imagine the situation that you have invested plenty of time and maybe even money, and you become really good at technology X. But the market that you have access to has no demand for this kind of technology, or demand is in deficit. Even worse, the competition is height, and people compete by lowering their rates.
There are good reasons why there are so many experts in Magento, PHP, Wordpress, and C# in Asia. If you are in that market, maybe you should verify if your career plan matches the market opportunities that are available for you. It’s possible that if you show up as a React or Python expert, there will be no place for you. On the other hand, with this technology set, you would be in height demand in Europe and the US.
If your eyes shined bright on the think about coding in Magento, PHP, Wordpress, or C#, please keep in mind that these are advanced stuff. Do yourself a favor and learn the basics first HTML, CSS, Javascript.
Reason 2 - the belief that somebody can learn to code for you
I already mention “not enough coding, or no coding at all” as one of the biggest sins of programming beginners. This one is related, but it’s more about mindset.
Probably all of us make this mistake in different parts of our lives, and it’s not our fault. The schooling system taught us that we should be in the passenger seat, and learning will happen to us while we read and watch rather than create.
The truth is that no matter how many videos on Youtube related to coding you will watch, how many tutorials you will read, or how many books you will read; this data wouldn’t build your knowledge.
The only way to learn to code and get the programmer knowledge is actually to do coding. So if the tutorial that you are reading or watching doesn’t make you coding at the same time or right after, you shouldn’t spend your time on that piece of content.
While learning to code, you should only look for specific tutorials that will let you code along the way and learn while following the process.
Reason 1 - copy & paste + autocompletion
So why to type all of these characters if I can just mark from here to here and copy & paste, and I can save plenty of time? That’s smart, right?
Well, it isn’t. The reason why you want to type all of these characters is that you want to learn. You don’t want to save the number of keystrokes. You want to learn how to code. When you copy & paste, you don’t learn anything.
The same applies to autocompletion in a code editor. Autocompletion is a great feature to speed up the development process, but it’s a terrible disruptor when we try to learn to code. There will be the right moment to use it in the future.
Actually, that advice is valid for learning any new programming language. Disable autocompletion in your editor and forget about the copy and paste. This will make a huge difference in your progress.
Conclusion
So these are 6 biggest reasons why people fail to learn programming.
Now you not only know them but you also know how to avoid them.
If you have any questions related to this video, leave the comment below.
If you found this post helpful, consider sharing it, so I will be motivated to publish more posts that will help you get the IT career you want.
And as always, stay focused!