I don't mean to offend, but I think we need to make some differentiation between the levels of "IT." To the lay person IT might mean someone that works with computers. However, as the TFA points out, there are many levels of IT from the person that installs desktops and support desk, to the application developers, to the datacenter operations technicians, to the CIO. The compensation varies wildly for these roles as does the level of education and demand.
Personally, I'm an app dev at for a financial institution that has specialized in some Java technologies over the last several years. Our devs make well more than TFA figures and where we are located (RTP in Raleigh,NC) IT unemployment is 3%. It is very difficult to even find skilled devs before someone else hires them. What's more, our devs are flocking to SF in droves too for even higher pay.
So yes, specialize and learn more. Become a Java/Compiler/OO/UML guru. Then you'll certainly be able to earn more. And, if you want better pay, go somewhere where you'll be in demand like SF, DC, RPT, etc.