The book “The Pragmatic Programmer” talked about developing a “Knowledge Portfolio,” which is like a stock portfolio.
You have certain “blue chip” skills, like Java or Dot Net, they don’t necessarily pay a premium but they are constantly in demand.
In addition, you identify certain areas, that while they may never take off, can wind up being lucrative if they do.
Invest the time to become the expert on them.
If you can develop a balanced knowledge portfolio, that puts you in a better position to make it through the ups and downs that happen in the IT world.
I have read through the Pragmatic Programmer...and most of the other titles in that editorial board's offerings. All have a place on my bookshelf. I don't have a problem with the blue chip skills. The principal problem right now is filling gaps between contracts. The specialized contracts are quite happy to pay my loaded rate. I just finished a contract that ran 8 years. The customer is thrilled with the results. A big follow on contract is very likely. Unfortunately, it takes time to leverage the big success into another proposal/bid/contract cycle. Our merry band of wizards have no contracts to keep paying the bills while we wait for the next round. It is very likely that some members of the project team will forage for new work and never return for the follow on contract.