http://www.lhotka.net/weblog/SpecializationTheFutureOfOurIndustry.aspx
Actually, it's dead on the mark. And in the last 5 years, it's been getting exponentially worse. Theoretically, current trends are going to make some of this better (WPF/WCF should help with a lot of the infrastructure for, well, presentation, and communications), but there will be a lot of churn while people learn those technologies and paradigms.
At the Vista Launch events (where they talked as much about .NET 3.0 as about Vista), I commented to a collegue that as an Architect, I need to know about all these technologies and capabilities, but as a programmer, I'm going crazy wanting to try them all out. And even as a generalist, can you really direct/coordinate the efforts of several people without having an in-depth understanding of the technologies being used?
What makes it worse is that IT is a field you can get into without any specialized training. (I should know...) So you've got a lot of developers without any formalized training trying to learn to develop complex apps, and then having to either build up large portions from scratch, or learn some pretty complex frameworks to get things done.