Does Microsoft have an open-source strategy -- beyond finding new ways to thwart Linux and other non-proprietary wares?
Sam Ramji, Microsoft's Director of Platform Technology Strategy and the company's Open Source Software Lab, says it does. And it's a lot less touchy-feely than this definition, which is on the Microsoft Open Source Web site: "The Microsoft open source strategy is focused on helping customers and partners be successful in today's heterogeneous technology world."
I met with Ramji last week when he was passing through New York on his way to Europe, and had a chance to ask him to provide a succinct definition of what Microsoft means when it refers to its own "open-source strategy."
Ramji has been one of the big advocates for interoperability between open-source and closed-source Microsoft software at the company.
Ramji and other Microsoft officials have been saying for the past year-plus that Microsoft is signing technology agreements with companies like Novell, BEA, Sun, XenSource, etc. because it wants to help their customers who are struggling with running open-source software alongside Microsoft software. I've been a vocal critic of Microsoft's interoperability claims and have said repeatedly that Microsoft's technology partnerships look to me more like a way to coerce Linux and open-source-software vendors to sign patent-license deals than a way to provide benefits to customers that they couldn't get without these kinds of agreements. (Ramji seemingly didn't hold my opinions against me, although he obviously disagreed with them.)
"Our focus is getting OSS on top of Windows," Ramji said "And I'm focused on (providing) interoperability between the LAMP (Linux, Apache, MySQL, PHP) and Windows stacks."
I asked Ramji if he could explain Microsoft's open-source strategy to me in a nutshell (or at least in a single PowerPoint slide). Here's what he showed me:
So here's my explanation of this slide: Microsoft wants to encourage the coexistence of two software stacks: a Microsoft Windows stack (Windows, Internet Information Services, SQL Server, .Net) and a Linux-free/Windows-centric LAMP (Linux, Apache, MySQL, PHP) stack -- something like a "WAMP." This slide is a picture of Microsoft's ideal view of a WAMP stack.
Microsoft is looking at open-source software (OSS) as just another flavor of independent software vendors (ISV) software. Microsoft's goal is to convince OSS vendors to port their software to Windows. But Microsoft doesn't want OSS software to just sit on top of Windows; the company wants this software to be tied into the Windows ecosystem by integrating with Active Directory, Microsoft Office, Expression designer tools, System Center systems-management wares and SQL Server database.
In cases where customers and software vendors want/need Linux to still be part of the picture for some reason, Microsoft will suggest they use Hyper-V, its forthcoming virtualization hypervisor, to run Linux and Linux-dependent applications.
Microsoft's OSS strategy makes a lot of sense for Microsoft. It's another way for Microsoft to try to make Linux obsolete, and not look as obviously ruthless doing so. And for OSS vendors who are selling a lot of their software on Windows -- Ramji repeated a couple of times that more than 50 percent of JBoss' business these days is from software running on Windows -- Microsoft's OSS push isn't a bad deal, either.
Am I still skeptical about Microsoft's claims that it's doing all this interoperability work to help its customers? I am. But what's your take on Redmond's grand OSS plan?