I am, once again, in tutorial hell

Photo by Emre Turkan on Unsplash

I am, once again, in tutorial hell

And how I've been trying to escape it

First of all, I'd like to tell you about myself. My name is Isadora, I am a Brazilian programmer. I'm a front end intern in a startup here in my country, and I work remotely.

As every single developer / tech student, I have been stuck in tutorial hell a number of times. Those "Code a Netflix Clone in React/Vue/Android/React Native" kind of tutorial.

I began learning programming in 2020, in the middle of the pandemics, as my classes in a Computer Science course would only begin in October. I began with a (pretty expensive) Java course, that'd teach the basics of the language and Object-Oriented Programming. Although I noticed Java was not my ideal language, it was fundamental for me, as I learned many many things from that. In 2021, I joined a Junior Enterprise and a couple more voluntary works in college to get better at programming. Indeed, Iearned a lot (esepcially about how a bad documented codebase in multiple languages / frameworks was hell), but I was soon stuck in a place we all know well: Tutorial Hell. Every single harder problem I encountered I was stuck, and couldn't escape it, so I'd begin another course, learn another language, and do it all again. Soon, I'd have studied JavaScript, Java, Python, Kotlin, Dart, PHP, C and C++. Quite a lot of things, but I wasn't past the programming logic in none of them, and I couldn't work on my own projects either.

However, this year, I decided I would escape it, and I would try to get a job after my time in my Junior Enterprise from college was finished. Turns out, I didn't have to wait that long. A colleague I had met in the Junior Enterprise asked me if I was interested in an intern job at the place he was working at. Perfect! An income, just before in-person classes returned would save me. It was a pretty simple admission process: send an email, solve a VueJS challenge with APIs, wait for the result.

I accepted it, and began skimming YouTube to find any kind of crash course to help me, from freeCodeCamp to TraversyMedia to Matheus Battisti (a Brazilian programmer who saved me with a playlist). I did not know anything about VueJS, but I knew I had to at least try. I created the website, made it responsive and worked with their API. I was super proud of myself because, in 5 days, I had not only learned the basics of a framework, but applied it and had a result I was really proud of. The only thing left was to wait for a response.

And a few weeks later, the result came, and I was successful! I had not only escaped tutorial hell, but made a project I was proud of, and got a job! Hooray!

I had yet to notice that the main problem was in the job itself: my tasks were hard. I was the only front end developer in the team, and I had no real experience in production. The rest of the team is amazing, and they help me a lot, but I could feel it: I wasn't doing the best I could. But the main problem wasn't on VueJS, I could work with it pretty well, and a fast look at the docs solved most, if not all, my Vue problems.

My problem was on JavaScript. I didn't know asynchronous JS, I only knew how to use Axios more or less. I didn't know how array methods worked, nor how objects were scoped. So my components, which would often receive an array of objects from the API were out of sync, they'd be rendered before I had my data.

As soon as I noticed this, I tried to take a step back. It pained me to notice it, but I did not know JavaScript well enough. Not that it was that big of a requirement for a Internship position, but I couldn't just wait for it to come for me . I had to learn it, and fast.

And that is my position now. I have been working normally, but I am also using my time to study JavaScript. I learned a lot from the roadmap.sh articles and videos, and that definitely changed it for me. I have been doing Exercism's exercises and Sylabus to practice a bit more, and I read Flavio Copes' JavaScript Handbook as well. TraversyMedia's DOM Crash Course also helped quite a lot, and I was able to improve significantly (from nothing to something) I think these have been some of the best guides I could find.

As I work through this tutorial hell, I will use this Hashnode Blog to help me document it. I hope it all goes well, and that I can keep this up. It might be a long ride, but there's no escaping it.

Thank you for reading, and I hope you can give me a tip or another.