Having said that, our industry is full of a lot of people who probably are not well suited for the job. Quite a few people look at the 6 figure salaries that you can get in some places in the US and figure it's a cushy way to get rich. Similarly, there are tons of jobs. Everybody is looking.
But here's the catch. "Everybody" is not looking for the average programmer. They are looking for the top 1% of applicants. Anybody who is hiring (i.e. everybody) can verify this. How man CVs do you get a month? How many do you interview? How many do you hire? And even then more than half the time I reckon companies are dissatisfied with the programmers they hire.
So there is actually a huge supply of average programmers that nobody wants. The average programmers aim at the "barely works" bar, and having hurdled it think they are senior programmers. A year or two under their belts, they demand their incredible wages.
At the same time, we all ask ourselves, "How can we protect ourselves from the hordes of untalented hacks knocking at our door?" Whiteboards, puzzles, trick-du-jour. It doesn't matter, because the real problem is what I stated at the top.
Confidence is important because writing good code is very, very difficult. Writing terrible code that barely works is not so difficult. We think we need to protect ourselves, but we don't need binary barriers to protect us from the untalented hacks. We need a better attitude. We need to realise that programming is a skill that takes time and effort to develop.
Some people should not be in this industry -- not because they don't have the chops; but because they don't actually want to put in the time and effort to develop their skills. And it is an overwhelming task. There is so much to learn that you will be drowning in it for years (another reason people put their fingers in the ears and think they are amazing).
So to any "young" programmers (of any age), my advice to you: Have courage. Have confidence. Love what you do because it's a crappy, horrible job if you don't -- no matter how much you get paid. And for those who don't love it... there are lots of jobs that are not programming, but are still in the industry. Quite a lot of them even pay more than programming! Seek them out.