News

Openness can be good business

SourceForge is not a Web site that one normally associates with Microsoft. Home to tens of thousands of open source projects, it has a large population of developers with largely anti-Microsoft sentiments. Yet if you surf over there right now, you can find the Windows Installer XML (WiX) toolset projects: an actual Microsoft-hatched open source project released under the Common Public License (CPL - an open source license developed by IBM.

While it certainly seems like this must be an elaborate hoax, or a precursor of the end of the world, it's for real. Even better, there's no need to speculate about the motivations behind the project. That's because the lead developer, Rob Mensching, is one of the many, many Microsoft employees who's maintaining a weblog. In his weblog, Rob says:

Now, let’s talk about why WiX was released as Open Source. First, working on WiX has never been a part of my job description or review goals. I work on the project in my free time. Second, WiX is a very developer oriented project and thus providing source code access increases the pool of available developers. Today, there are five core developers (Robert, K, Reid, and Derek, thank you!) regularly working on WiX in their free time with another ten submitting fixes occasionally. Finally, many parts of the Open Source development process appeal to me. Back in 1999 and 2000, I did not feel that many people inside Microsoft understood what the Open Source community was really about and I wanted to improve that understanding by providing an example.

He also discusses a little of the process he went through to get the public posting approved (which doesn't actually sound all that onerous), and mentions that this is the very same toolkit used by many Microsoft product teams to build their setups.

Of course, the anti-Microsoft crowd has been having a field day with this release, both in the comments to Rob's weblog and on sites such as SlashDot. Various unlikely conspiracy theories have been postulated to explain why this tool is available as open source, but honestly, I think it makes more sense to see the availability of WiX as part of a larger movement towards openness and developer education on Microsoft's part. To my mind, this release fits in with such other parts of the universe as the hundreds of Microsoft bloggers and the immense amount of information available over on the Patterns & Practices Web site. At least over in the Developer Division, Microsoft seems to have realized that helping people use tools like Visual Studio .NET more effectively sells the product. Giving away some tool code that helps build better setup programs for .NET applications, using an easily automated process, can only help .NET gain further acceptance.

Finally, I would be remiss to leave this column without mentioning the actual Wix product itself. The idea is pretty simple: it contains tools and an XML schema. You author an XML document that conforms to the schema, run it through the toolset, and you get an MSI file out the other end. As I mentioned, this exact tool is used by many product teams at Microsoft to produce their MSI files, so you know that it works. Starting with XML has the usual XML benefits; there are plenty of tools to write and manipulate XML files. And driving the whole thing from the command line makes it trivial to work into most automated build processes. I'll be taking a more in-depth look in the Developer Central newsletter at some point, but on first inspection I like what I see.

About the Author

Mike Gunderloy has been developing software for a quarter-century now, and writing about it for nearly as long. He walked away from a .NET development career in 2006 and has been a happy Rails user ever since. Mike blogs at A Fresh Cup.