When I was starting out in this field, I was afraid to ask questions where a future client might see them, or to give my real name on a professional forum. Surely real programmers would be incensed that someone was paying for my clumsy work. After all, how good could I be if I had bugs or indeed questions at all?
The phrase you're looking for is Imposter Syndrome.
It's been a bunch of years, and I've acquired a lot more skills. I've made clients, and their clients, very happy. I've taught. I've done tech support. It's a pleasure to be able to lend a hand to stuck peers. And I still feel like I don't know enough.
Never will. For one thing, because website development is a field that moves fast and is ever-changing. For another, we deploy for an environment in which the combination of variables — browser implementations of specs, viewport size, connection speed, user expectations & needs — is close enough to infinite that we never get to be certain of having covered all bases. The job requires acceptance of the inevitability that something, somewhere, is going to make an unpleasant surprise. The best we can do is minimize the odds.
Development always conjures up amused memories for me of the carnival game Whack-A-Mole. Whack one successfully, and two or three more immediately pop up in other places. WTF. It's the damned moles who win, if you approach it as a zero-sum game.
Driving the WTF rate down; not unrealistic fantasies of zero.
Yeah. Now there's a metric worth using.