Here I am, over ten months later, convinced I know nothing. Software development really is the Benjamin Button of learning. The more I know, the more I know I do not know. Every time I learn something new, I find a few things I do not know. I then proceed to wonder about all the things I don't know that I don't know. I occasionally have haha moments when I figure something out. Those moments are quickly followed by thoughts of whether I could have done it better. One thing about software development, it could have been done better more than 99% of the time.
This could be the single most important thing. It is how I get better. It is how I find out about the things I do not know. It is how I know what exactly I know, which goes a long way in reassuring me that I could do better. Simply put, it is the best way for me to learn computer science. Sitting in front of screens, watching tutorial videos and reading web pages can only do so much. They are only helpful to a point. After that, you need to actually test what you've learnt and realize what you know. It's fine if you don't know it all in that moment. It also helps you realize how truly important and helpful google is. So build new webpages, experiment, and solve algorithms. Do anything at all that gets you to write codes.
Doing is better when you have people with you. This is at least true for most things. Meeting software developers is one way to feel more comfortable. While software developers with a few years of experience have definitely been helpful for me, junior developers have also been as helpful. Meeting these different people has helped me with my mental map. I don't fully know where the journey ends, but I at least have some milestones in mind. It is also easier to gauge your skill (or lack of it) when you know more people in the field. It has given me an idea of where I want to be and what I want to know.
No amount of practice will replace professional experience. I've often heard more experienced developers say this. I don't have much software development experience, and this is what the next phase on my journey will concern. Most likely through an internship or a junior role. I know it's true though, because it was true for me with writing. When I wrote as a hobby, there weren't many expectations. I didn't have to worry about how good anything was, I could abandon anything I didn't like. When I started writing professionally, there were suddenly people leaving comments on my works. I had to receive criticism, work with people to get past those criticisms, meet deadlines, work better on a team, among other things. I couldn't just abandon things I started writing and lost interest in. However, all of these things ultimately made me a better writer. It will be the same for web development. Professional experience is necessary to gain the skill to create larger projects and work on much larger codebases. Soft skills can also help make the ignorance easier to bear. You may not know much, but people will look upon you more kindly when you look eager to learn what you do not know. So jump in, as I'm trying to do.