My husband gave me a new edition of Tracy Kidder's 1981 book, The Soul of a New Machine, for Christmas. When I first read it in the mid-80s, it helped me understand technology and the computing industry. The book is still a great read. One thing Kidder discusses is how IBM's failure to recognize market needs, demonstrated by its early decision to initially ignore the potential of minicomputers, provided opportunities for companies such as Digital Equipment Corporation (DEC) and Data General to take the industry in new directions.

I was reminded of Kidder's book during a recent conversation about the Windows Server 2003 R2 version of Services for UNIX (SFU). Obviously, Linux represents a threat to Microsoft's market that's reminiscent of the threat DEC's minicomputers posed to IBM's mainframe "hegemony" (as Kidder puts it) way back when. But that obvious connection isn't what struck me most. What caught my attention was the fact that Microsoft has decided that the way to take on this threat is to acknowledge that most IT organizations have multiple platforms, go back to basics, embrace customers who have mixed environments, and give them good customer service.

While briefing me on SFU in R2, Windows Server Senior Technical Product Manager Ryan Rands said, "We've seen about a half-million downloads of SFU 3.5. When customers vote with downloads like that, we get a clear message that customers really want SFU. So we decided to integrate SFU as a platform-level component in the R2 release. The big message we've heard is customers want to do more UNIX integration today, not less."

I said Microsoft's willingness to acknowledge—let alone support—increased demand for interoperability was a big change in the company's philosophy. Up to now, Microsoft's common response to interoperability problems has been to tell customers to adopt Windows across the board.

Ryan reminded me that Windows Server actually owes part of its success to Microsoft's early facilitation of interoperability. He cited the company's strategy for converting Novell shops to Windows NT: "Look back to the early nineties and Novell. In a lot of ways, Microsoft's success came from creating tools that let customers easily integrate Windows and Novell platforms. We just didn't realize that approach was one of the things that made us successful. We've struggled to make Windows Server on par with UNIX, mainframes, and so forth. Once we achieved that goal, we said customers needed to choose a platform. Now, we recognize that, for various reasons, some customers are just going to choose another platform. It might have to do with vendor preference, their integrator's preference, or applications."

That recognition sounds like a breakthrough to me. If Microsoft wants satisfied IT customers and those customers want interoperability, it's a good idea to give them the tools they need.

Heterogeneous IT—Not That There's Anything Wrong with It
"The primary advantage of UNIX integration in R2 is that it's a part of the platform," Ryan explained. "If you have UNIX systems, now a default part of the Windows Server OS lets you run UNIX code natively instead of recompiled on the Windows system and lets you do directory administration and consolidate directories using a unified structure without retooling or retraining."

Microsoft didn't add a lot of SFU features in R2, but Ryan pointed out that "the Subsystem for UNIX-based Applications (SUA) is brand new. Previously, we had the Interix subsystem, which replaced the POSIX-compliant subsystem in Windows Server as well as in Windows client. In R2, SUA is a completely rewritten version of Interix. The goal was to make it more stable and more compatible with existing UNIX systems but also to make it backward-compatible for customers who are already using SFU. Starting in R2, the default POSIX subsystem has been removed completely. The default UNIX-compatible subsystem is now SUA."

Other new functionality involves mixed mode. With R2, Ryan explained, you can now "run straight UNIX commands, but you don't have to worry about running Windows commands at the same time as UNIX commands. You can have an application that actually mixes calling Windows APIs directly and calling into the UNIX APIs."

The Customer Is Always Right
Integrating SFU into the OS seems like a good step to show customers that Microsoft supports them no matter what their environment includes. I think customers will like Microsoft better for being realistic. What do you think?