How can junior engineers avoid falling into Tutorial Hell while learning React web app development? #TutorialHell #AvoidTutorialHell #ReactWebApp
Imagine struggling with overwhelming tutorials while trying to build a React web app as a junior engineer. How can a senior engineer help navigate the learning process effectively to prevent getting stuck in this cycle?
Tips to learn effectively without getting stuck in Tutorial Hell:
Learning Strategy:
– Start by understanding the basics before diving into complex tutorials
– Break down the learning process into manageable chunks
– Focus on practical application rather than mastering every aspect of a framework
Building Approach:
– Begin building small projects to reinforce knowledge
– Gradually increase the complexity of projects to challenge yourself
– Seek feedback from peers or mentors to improve continuously
Junior engineers can combat Tutorial Hell by adopting a strategic learning approach, prioritizing practical experience over theoretical knowledge, and seeking guidance from experienced professionals when needed. By focusing on building real-world projects and continuously improving skills, they can avoid getting lost in the endless cycle of tutorials.
Start a tutorial that gets you started on something similar to something you actually want to build. Don’t follow the tutorial strictly, rather, change everything so it fits the project you actually want to build. Once the tutorial no longer conforms to the project you want to build, skim through the rest and focus on just building your personal project.
Another option is start a tutorial and start building something you want to build separately but at the same time. Every time you learn something useful for your personal project, pause the tutorial and go apply your changes/fixes to your project. Don’t feel obligated to continue building the tutorial once you’re able to solve problems yourself without direct guidance. It’s a good idea to finish watching/reading the tutorial content so you have some understanding about the rest of the topics it covers, but don’t feel obligated to actually copy the tutorial code for the entire thing.
Honestly, if tutorial hell is something you struggle with, maybe just don’t even try to learn with tutorials, focus on documentation and textbook style learning materials as well. Spend your programming time actually building something, even if it’s something stupid or a cliche clone of something that already exists. Practice actually looking up and finding solutions to blockers rather than expecting to them to be handed to you zero effort by the next chapter in the tutorial. Honestly, a lot of tutorials skim over important optimizations and stuff, they’re designed to get you more comfortable with a specific technology or tool, they aren’t really designed to teach you how to use it correctly in every possible circumstance.
Have something you genuinely want to create. I think a reason people consume tutorials so much is because they like the idea of being good, or at least I’m that way.
I believe you want to get to a point where you’re building something and referring to official docs you have open in one tab, and other tabs with tutorials you looked up on the fly regarding whatever knowledge you need for your project at whatever specific moment.
Start small with your ideas if you struggle with them. They can be as serious or silly as you want them to be.
Find courses that have you actually build a real project to get a general idea of how it works and then when building on your own reference the documentation and your previous project.
> This engineer starts by watching a course to learn how to do it but soon feels overwhelmed by a lack of knowledge and begins to fall into the “tutorial hell” rabbit hole.
Does an engineer really start watching a course though? He is most likely to follow a written tutorial and asap starts building his own features, no?
Step one read
Not watch
Why is no one talking about reading docs?
Almost everyone learns by doing, not watching.
Watch a tutorial by all means, but then use what you have learned to build stuff.
That doesn’t have to be a build that makes sense. Just play with the logic.
If you have just finished a tutorial on for loops, make a load of funny logic text games and try your best to break it, figure out why, and refix it. Find the edge cases. Find the dumb long way to fix it and the optimal way to fix it. Both come in useful as both ways teach you more about the language and how it works.
If you get stuck on syntax, double check, but don’t just watch the tutorial again.
Build things without tutorials. That’s all. That’s literally it.
“But it’s hard and I might get stuck and…”
Shh. Look up what you need to know when you need to know it. You will prevail. Now go, little one, go and be free.
Once you’ve been building something yourself, choose a framework and go to town with it, it can often still be insightful to get different takes with tutorials months after using this framework. The trick is that you need to build something and persist with it. Start small, baby steps. Web apps are quite a learning curve, you have frontend and backend, different languages are involved.
Don’t get bogged down trying to memorise every intricate detail, you’ll forget those quickly… Being aware of a detail you might want (but not remembering the syntax) is the way (for me and many others), as you can always look up documentation and even get a little help from AI these days.
I often use AI to bounce ideas off of. Databases for instance, I’ve learned a great deal about mongo, sql and after more querying discover there’s a solution like MinIO and other ways to deploy storage solutions which I would not have heard about had I not been bouncing ideas off of. Will I use them all? Nope, but I know they exist now and what they do they do well, so I might in the future (edit… On the back of the database exploration I do use mariadb and redis for my needs)
If you feel overwhelmed, scale back the expectations of the project. There’s no need to over think this.
RTFM