Introduction
Have you repeatedly followed tutorials, yet not retain any information? Does your portfolio only consist of tutorial projects? If the answer is yes to these questions, then you might be stuck in the infinite loop known as tutorial hell. I myself have been there, and it is not a great place to be. I spent hours watching tutorials, yet not understanding the material, and then repeating those tutorials again until I just gave up.
Tutorial Hell...?
Sadly, tutorial hell seems to be one of the leading causes of people giving up on coding, but that does not have to be the case for you. I will start by giving a brief rundown of what tutorial hell is.
Tutorial hell is what many of us get trapped in when we enter the vicious cycle of watching tutorial videos. You may watch hours upon hours of coding tutorials, but when the time comes to use what you 'learned,' you feel lost. It feels like you are starting from square one. This is a normal way to feel when you are learning something new, especially if it is a challenging experience. The problem is when developers who are lost binge watch and follow more tutorials in an endless cycle.
ย ย ย ย ย ย Interviewer: "What are constants? What are some use cases?"
ย ย ย ย ย ย Interviewee in Tutorial Hell: "Ummmm..."
Tutorials Are Not Bad!
I am not trying to say tutorials are not a great way to learn. Watching a tutorial for a new tool or concept is a great way to get started, but once you watch that tutorial it is important to use other resources and the information you learned. Try to watch tutorials and implement some parts that you learned into your own projects. Deconstruct the projects you build from tutorials. Poke around with them. Just following along can have you coding blindly and not understanding what you are doing.
Getting Out
You CAN get out of tutorial hell. It simply starts with changing your approach to learning. Tutorials alone will cause you lots of confusion and grief. Minimize these feelings by trying a few new things.
Start Building
Build your own projects that you know you can finish, as well as some that push your limits and challenge the mind (you do not need to do big projects starting out). This is what I call learning through the struggle. My best learning experiences were those 'ah-ha' moments where I consistently threw everything I had at a problem. It is okay not to know, what matters is learning how to approach problems and solve them. Do not be afraid to try new things or completely break them!
Use Your Resources
There are many resources besides video tutorials that teach new concepts, show examples, and help you hit the ground running. The great thing about coding is that your idea has probably been made before. Look up your idea on Google, Github, and Stack Overflow to see if someone has already solved your problem. Many developers even breakdown their code line by line.
Here are a few resources that have helped me.
- Code Wars: Master code through fun and unique challenges
- Brilliant: Contains computer science challenges and other skills
- Stack Overflow: A community for developers to share information and learn from each other
Code Wars and Stack Overflow are the two that I used to build a solid foundation with Ruby. I was able to think outside the box by solving Code Wars kata. I could find problems that have already been solved on Stack Overflow when code-curious or if I hit roadblocks. Stack Overflow is generally more reliable than doing a simple Google search because of their upvote system and high-quality answers. You can get some great perspective from viewing other peoples' code.
Join a Community
Join a coding community in real-life by using sites like Meetup, Facebook and Craigslist to find meetings. For the introverted folks like myself, you can still get lots of benefits from networking virtually. Discord, Twitter, Facebook and even DEV are great options. You can learn from others, find a mentor, collaborate on projects, and teach others. Do not be afraid to put yourself out there. Connect with others who have similar goals and interests. Having someone you can reach out to when you hit a road bump or just having some friends with similar interests is wholesome and invaluable. It can make things feel more real, and you less alone.
Wrapping Things Up
I hope that reading this post provided some useful information, or at least helped motivate and guide you in the right direction. I myself, only watched tutorials for a VERY long time. It was only recently that I started building and breaking things, and I still have not done anything significant. I can say building my own applications for two hours has proven to be much more effective than watching tutorials for four times as many hours. Do not be afraid of failure. Fixing our mistakes provides some of the most valuable learning experiences. Just get started!
Please feel free to leave comments and feedback. What has your experience been like learning to code? How did you escape tutorial hell? If you are still in it now, what steps will you take to get out? Do not be shy, I truly welcome your perspective!
Top comments (6)
Great Post by the way, One thing that you can use to leave tutorial hell is by using documentation to what ever you are learning. By using the documentation, you will practice a lot and retain a lot of muscle memory more than that of the tutorial videos. You'll end up looking for projects on your own, not following the tutorial projects and by building and learning on your own, you'll learn much and become a very good developer.
Actually, this really motivates me.
Thanks, I guess I'm not alone in this infinite "what did the guy said in the tutorial video again?!" loop in front of my blank page.
Love it, great tips!
Great article
Thank you, Shreyasi! I am glad you liked it :)
Awesome tips that i wish i knew about years ago. I used to get stuck in tutorial hell for so long it took away my creativity for new projects as i could not get past the tutorials ๐