The Internet has changed drastically from when I made my first hello world web page. Back then, there were no extensive frameworks or libraries to do the heavy lifting for you. If you wanted to do something cool, you had to figure it out for yourself. Stack Overflow wasn't around, google wasn't as powerful as it is, and most tutorials came in 300 page books with CD-ROMs of the project code base.
You didn't need a Linux server, or Docker, or any other Virtual Servers, nothing like that. You could just make a web page, open it in your browser, and it would just work. Or if you were feeling adventurous, you could try hosting it on GeoCities for the world to see. It was a different time, a simpler time. But that isn't to say it was a better time.
Like I said, there was no Docker, no SO, no online community to help newbie developers break into the industry. But all of that changed really quickly once people started experimenting with what they could do with web pages. New and exciting technologies became more readily available for newbies and it helped push and shape the Internet into what we see today.
So what does this have to do with advice for aspiring developers?
Well, my experience is most likely very different from yours, even if you're the same age as me, and got into web development before the turn of the millennium. And this brings us nicely to my first point.
Your Experience May Vary
Everyone asks for advice. It's only natural to want to learn from someone who has already achieved what you want to achieve, who knows what you want to know. But if you ask more people for advice, their answers will likely have some similarities, and some differences. So it begs the question - whose advice do you take?
There is no right or wrong answer to this. Personally, I would take the advice that seems to resonate more with my experience and my situation. If I'm asking for help with, say, marketing my SaaS, I'll more likely listen to someone who has had success with a product that's similar to mine, over someone who has had greater success with a product completely different to mine, as their audience is going to be different to mine. But as I said, your experience may vary.
If you're going to ask, please listen.
When it comes to asking for advice, the one thing that frustrates most people is when you ask them for advice, then do the opposite. Not only does it make the advisor feel like they've wasted their time in trying to help you, but it makes them less inclined to help you in the future.
If you post an open question and get a dozen replies, they'll have different opinions on a solution, and it'll be impossible to do what everyone says. But doing what no-one says, or what people say not to do, can give the impression you don't really want the advice, instead you just want the attention.
This isn't to say don't ask for advice or feedback, but at least listen to the answer. It's not only time wasting, but it's also rude and inconsiderate, and will only result in people not giving you advice in future, when you may really need it.
Walk before you Run. Crawl before you Walk.
I have lost count of how often I see people ask questions like "I'm just getting started with web dev. Which is better? React or Node?" And while ambitious, these fresh faced enthusiasts are trying to complete "Intermediate" courses without completing "beginner" courses. Because, who needs the basics, right?
Whatever you want to do, you absolutely MUST learn the basics before you can do the fun, cool, and exciting stuff. And there are literally millions of free resources to teach you the basics quickly, so that you can start doing the fun, cool, and exciting stuff much quicker and easier than you could 20 years ago.
Build, Build, BUILD
As with all jobs and crafts, the more you practice, the better you'll get. Build as many projects as you can think of. Build clones of what excites you. If you want to work for FAANG, make a FAANG clone as part of your portfolio.
Use whatever tech or stack you're comfortable with, and build what you want or what you can.
Having said that, keep the size of your project in mind. If you're building something specifically for your portfolio, keep it small. If you're building it to sell to a client, make it as big as you need. If you're building it to become a SaaS, make it as big as it needs.
Do not ask for mentorship
I see a lot of new developers asking more experienced developers if they can mentor. This is a humbling honour, but unless the experienced developer specifically says they can mentor, or they offer mentorship, please do not ask them.
Being a mentor is difficult. If you're a junior dev working in a company, they likely have a mentor scheme in place, usually with a delegated senior who is able to do so. But outside of the corporate environment, being a mentor is a whole different ball game.
Unless someone says they can mentor, assume they can't. Being a good mentor involves a lot of time and dedication, something not everyone can afford, and it can be really disheartening to ask and be rejected, as much as it can be to be asked and have to say no.
And this links back to the first point on this list.
We all want to learn from those who already do what we want to, but they got to where they are through different situations and circumstances.
Advice is something we all want at some point. Usually we want to ask from someone we admire, respect, or aspire to be like, and that's ok. But everyone we ask is going to have a different story. And when they impart their knowledge and wisdom, they, to an extent, expect you to listen - especially if you sought them out specifically.
There are limitless resources and opportunities for people wanting to get into web dev, but make sure you cover the basics before getting too deep. There's a reason you get taught how to swim before you get taught how to surf.
Be kind to people you ask for advice, and be respectful if they are either unable to help, or don't say what you want to hear. Everyone is different, and not everyone will be able to drop everything to help the next generation of developers.
But most importantly, just build cool stuff that you'd be proud to show off at a job interview. And if you can't do that yet, practice more.