Escaping Tutorial Hell
My Beginnings
What got me interested in programming was electronics, and a desire to understand how to connect an Arduino to a website. I had seen a couple of Youtube tutorials showing a connection between an Arduino to firebase, but what I really wanted is to represent and control the arduino through a website. Some sort of visual interface.
I started, as many others do, by following Youtube tutorials. Then soon after, I started exploring the many great websites to learn from such as the excellent Free Code Camp, and also some excellent courses on Udemy. I found my first course here, Colt Steel’s Web Developers Bootcamp. And so began my journey.
As soon as I completed one course, I had already another one lined up. I worked on one course after the other in evenings and weekends. It was fun, and I could see real progress being made. Following along and building more and more complex projects, with more complex technology.
This went on for about a year, and working my way through around 5 Udemy courses. I felt pretty confident as a web developer.
The next step was for me to build something from scratch. Without following a tutorial. And that’s when it hit me. I sat there for a few minutes staring at the screen, with a view to build a full stack react web app. I didn’t know where to start. What even was the command to start a new react app? I was just blank. I was a little confused, I had done all those courses, then why couldn’t I build anything? Do I need more courses? Did I not learn a thing?
Of course no one tells you that not knowing is normal.
Since I couldn’t remember anything, I tried to refer back to the courses I had done as reference material, it seemed like a step backwards, but I just thought let’s go with it.
Step one, fire up visual studio code, with a view to build a simple react todo app. Step two, try to accomplish my next task. If I can’t, use the reference material when I can’t figure it out.
It is only in retrospect that I can see that this is where I felt that I really started to gain understanding and actually start to remember what I had to do. The process in learning here is very different to what it was at the very beginning, now it was much more involved. There was a lot more effort into what I was doing.
Learning to Embrace Cognitive unease
Naturally, having to work out what I had to do at every step took a lot more time and a lot more energy. What I thought would take 1 week to complete an exercise, actually took a month. I would always underestimate the time it took for me to complete things. And this is OK. Took me a while to realise this, but learning programming takes time. Of course it doesn’t help with all the marketing and nonsense touted around on the interwebs about learning to program in ‘4 WEEKS!’ or ‘how i learned python in 1 WEEK!’ .
Rest assured, the vast majority of people took many months if not years to get to grips with just the fundamentals. Don’t be discouraged if your progress isn’t as fast as you would have hoped. It’s a marathon, not a sprint. Consistent and steady practice will get you there.
Now it still is a marathon, though it’s good start on with a nice few walks. Choose the path of cognitive unease once you’ve had a few strolls. Find a balance between difficulty and enjoyment. And go slower, it’s fine.
Is there really a tutorial hell? Is it not all just part of the process?
I would say that this path through ‘tutorial hell’ is just a section on the path to understanding. It’s not something to look out for or avoid, especially if the tutorials you are doing are enjoyable. This tutorial hell it seems, is just a state of mind. Somewhere you find yourself in when you think you should have made more progress than you actually have. Probably because someone said you should have made more progress, or that article title said ‘learn python in 5 days’.
It’s fine, if your going through tutorials keep going, just don’t beat yourself up about where you should or shouldn’t be in your path to programming. It’s part of the journey.
Then when you are ready to turn the stroll into a gentle jog, go for it. No rush. Go steady.
What really matters
What really matters? Of course this is largely subjective. It depends on your goals, ethics and responsibilities amongst other things.
For me, I wanted to change career, but I didn’t want the learning to feel like a chore. Luckily I’m spoilt for choice when it comes to excellent learning material. There are a lot of good teachers out there putting out good content. So I think it’s a little harsh to be have something called tutorial hell, implying these tutorials are somehow drawing you down a path to hell.
This road of learning never ends, so go slow, take it in, help people, and have some fun.