It's been very interesting (and slightly depressing) reading though this thread. With regards to the "skills shortage", we have exactly the same situation here in the UK. Companies will typically ask for ridiculously long lists of highly specialised niche skills, offer a salary less than a college leaver would expect to get in most comparable professions, and then bleat on about "skills shortages" when they fail to find anyone suitable.
It's even worse for people just staring out. There are practically no entry level positions in the IT industry anymore, and very few companies are willing to offer in-house training to their IT staff. If you've got a good recent degree in an IT related subject, and the stuff you learned at university just happens to match the set of niche skills that the company is after, then you've got a chance. But for everyone else, forget it.
Another depressing feature of IT recruitment is how rapidly hard won skills become devalued. If an IT professional is made redundant and gets a non-IT job to tide himself over, then after about a year or so, his IT skills will be practically worthless in the jobs market. For some reason, companies only seem to care about recent experience.
None of this is actually new. IT recruitment practices have always been notoriously shortsighted and irrational. But at least in the past, for those people who could get a foot in the door, the salaries were high enough to (just about) make up for all the ---That which is odiferous and causeth plants to grow---.
These days, with salaries plummeting, and chronic job insecurity, IT is no longer really an attractive career option.
So getting back to the original thread topic, I'd say to anyone just starting out, by all means learn to code as a hobby. But if you're after a solid, well-paying career then you're better off looking elsewhere.