Tutorial Hell is real and it's one of humanity’s worst known sufferings. You can easily find lots of beginner developers burning, out there, in the fire of tutorials.
Fortunately, there's a way out. You can work your way up on the ladder of self learning and project building and this will help you escape tutorial hell. Let me explain how can we do so.
Great projects are not finished in a day, they are built day by day in small proportions. And you have to do the same if you want to become a great programmer - DON'T BUILD A BIG PROJECT ALL AT ONCE
Initially, what you want is to build a super small project or a bunch of super small projects. These are what I call Atomic Projects.
Try to think of a big website, let's say YouTube.
If we try to break the above image into various small projects, we will see that it has:
In the above list, I gave you ideas for 5 different atomic projects instead of one large project. You can build all of them separately and join them together once finished.
Also, use the same mental model to break other big projects that you want to build into smaller chunks.
Self-teaching is important. No one else will teach you everything you require. Sometimes teaching yourself also includes teaching others. When you teach something to others, you repeat that concept in your mind which results in a better understanding of it.
If you're thinking that you are not ready to teach others, you might be wrong. If you are even one step ahead of someone else, you are completely ready to teach them about that extra step.
To teach is to learn twice, if you are teaching someone, you'll have to revisit the concepts and communicate in an easy way, which will also give structure to your understanding of that particular concept.
Don't try to cover 100 miles in one step. Sometimes things just take time, especially when you are new to programming. You have to give your brain some time to digest concepts.
If you are trying too hard, you are simply stopping yourself to learn. Take some time and explore other points which I have mentioned in this article. You will find that most of the time those concepts will start to click after that.
Debugging is a lifesaver. If you take some time to learn about debugging and how to solve errors quickly, how to work with browser dev tools, and use console.log() often, your suffering will be somewhat reduced.
No matter how great a developer you become, you will still have bugs. Instead of brooding over writing bug-free code, learn how to solve them quickly.
I know this is what you usually do when you are stuck in tutorial hell but I am not talking about mindlessly looking at your screen. I am talking about thoughtfully staring at your code and thinking -
When you think actively on these questions, your brain forms certain connections and neurons which will help you grasp those concepts and make you a rockstar developer.
Give reading documentation a try. You might be too attached to watching videos or text tutorials that you can't do anything without them.
A baby has to eventually learn to walk on their own, and so do you as a developer. Learn to solve your own problems, learn to build your own projects. Documentation will be your best friend on this journey.
You can also go back to the videos or blogs to understand certain concepts if docs don't click with you yet. But try to make your learning smoother without getting into tutorial hell.
Asking for help isn't shameful. We all need it at some point in time. If you are really struggling and nothing else is working, try talking to other developers, especially the ones who are senior to you in terms of knowledge and understanding of the concepts. Professional experience is not necessarily required.
Create a Twitter, Showwcase, Slack, and Discord account. Join technical communities there and try to connect with developers who can help you solve your problem. Build a genuine connection with them, and ask your questions if they are ready to help you.
Coding is important, but can you write a technical article explaining those concepts to others? Writing blogs has innumerable benefits. It helps you better understand the topics you are writing about, build your personal brand, differentiate you from other non-blogging developers, and open the door to various professional opportunities.
If you know even a single thing in programming, web development, etc. you are perfectly ready to start your own blog. There are various great platforms that will help you get started:
Don't think much about perfection initially, just post your first blog. You'll learn everything eventually as you write more.
A career in tech = lifelong learning. You cannot survive long enough if you don't like learning. Sooner or later, you have to fall in love with learning to make your journey smoother.
It may be possible that you are not feeling confident to work on your own projects because you have not understood certain concepts. In that case, go back to the basics and learn those programming concepts again. Once you’re confident, come back to hack your project.
You may find this hard initially but as you practice and work more, you will learn how things work and definitely become a great developer.
I wish you very good luck in your journey of escaping tutorial hell. If you follow the above points seriously, you will most likely get rid of tutorial hell.
Check out my blog