I had a discussion with someone the other day, about how web developers (at least Open Source ones) tend to be self taught, rather than pursuing some kind of formal web development education. Comparing this to other careers, where a formal education is a strict requirement, what exactly is it that sets web development apart? There is the dynamic nature of the industry, and how quickly things shift and change, but I think it largely boils down to the nature of developers themselves.
The comparison was made, in this case, to graphic design. Sure, it's possible for a designer to play around in Photoshop every day and learn new ways of achieving their goals, but it's much more common to learn Photoshop as part of a graphic design course or degree. But honestly, the inherent nature of a graphic designer, their creativity, will not help them when it comes to learning a computer program. Photoshop is just a tool. The brush and canvas of a traditional artist.
A huge part of being a good developer is pushing through the unknown. Figuring out new ways of solving old problems. It's about more than applying knowledge. It's about insight. Anticipating what's around the next corner, before you've even seen the corner. As a developer, you can't afford to be intimidated by not knowing. At the very least, you better know how to work Google. So, every day becomes about learning and improving. There is a brilliant quote from an article I read the other day: "If you aren't ashamed of what you wrote 6 months ago, you aren't progressing as much as you should."
For me, a huge part of learning, is teaching. When you teach, you're forced to evaluate exactly what it is you know. It will highlight the gaps in your knowledge very quickly. But nobody expects you to have all the answers all the time. Except maybe children. But if you want to be something for someone, then be something you want them to be. If they see you not knowing, and then taking the time to learn, it will show them that there's no shame in not knowing, and it will inspire them to learn for themselves. This will inevitably lead to answering a million questions, but ultimately, you are empowering them to empower themselves.
I can't imagine having this experience in any other industry. Sure, it can be a little bit discouraging knowing that the lines of code I wrote today, will be thrown out in favour of better code in a few months. But knowing that I have yet to learn the way I'll write that better code, more than makes up for it. Be comfortable with not knowing, but push through it.