Paul Murphy at ZDNet has a great post on why many MCSEs (Microsoft Certified Systems Engineer) struggle to gain proficiency with Linux. In part it may stem from apathy, but Paul (following a long post from a would-be Linux adoptee) identifies something more fundamental:
A divide between theory and practice.
As Paul writes:
...[T]here's a great divide between the Windows and Unix camps: a divide one side doesn't recognize and the other doesn't want to cross. It's the divide between training and education: the difference between rote learning and the application of theory to practice.
Basically, to learn Unix you learn to understand and apply a small set of key ideas and achieve expertise by expanding both the set of ideas and your ability to apply them - but you learn Windows by working with the functionality available in a specific release.
Later, Paul suggests that MCSEs are looking for convenient scripts that they can memorize and regurgitate, whereas Unix (and, by extension, Linux) developers rely on general principles to learn and use the system. It's why, I believe, it's difficult for Microsoft-based IT shops to truly innovate. How can an MCSE innovate when she's taught to color within the lines, and innovation is all about coloring outside the lines, or redrawing the lines?
That's a gross generalization, obviously, but it seems to hold true in the enterprises with which I work. Microsoft has successfully lowered the bar for average people to participate in IT administration. But it has yet to unlock the doors to IT creativity. If you want to color within the lines that Microsoft lays out for you, Windows and its ecosystem is ideal. But if you want IT to drive competitive advantage...time to get off Windows.