Microsoft's massive openness pledge: APIs, protocols, data portability, community
Microsoft may prove us all wrong yet.
Welcome to the free world, Microsoft. Today Steve Ballmer, CEO of Microsoft, announced that Microsoft is making several bold strides to make its software and its company more open, transparent, and community-oriented.
As a Microsoft admirer, critic, and competitor, I can't help but applaud the depth and breadth of this move (though not everyone thinks there's much to celebrate here). It is a banner day in the software industry (and proof that back-room bargains are the wrong way to achieve interoperability).
Ray Ozzie declared:
Customers need all their vendors, including and especially Microsoft, to deliver software and services that are flexible enough such that any developer can use their open interfaces and data to effectively integrate applications or to compose entirely new solutions. By increasing the openness of our products, we will provide developers additional opportunity to innovate and deliver value for customers.
Amen. But what does this mean? Four principal things:
- Open Connections. Microsoft is agreeing to make available all the APIs and protocols that any other Microsoft product requires to call another of Microsoft's high-volume products (Windows Vista, Office 2007, SQL 2008, Sharepoint, etc.) will be available for free, without access restrictions (to competitors, partners, etc.).
The first step in this pillar is for Microsoft to make available its Microsoft Communication Protocol Program (MCPP) and its WSPP server to server protocols, covering Workgroup Server. This will include all of the information that Samba got plus client/server and more.
Microsoft is making this first set of documentation available immediately (though it will take a week or more for the search engines to crawl the 30,000+ pages) and the next set of documents available in April. This will allow companies, including competitors, to interoperate with Microsoft products on an equal (or close-to-equal, as being the source of the code always matters) basis.
Also of keen interest, "Microsoft is providing a covenant not to sue open source developers for development or non-commercial distribution of implementations of these protocols. These developers will be able to use the documentation for free to develop products. Companies that engage in commercial distribution of these protocol implementations will be able to obtain a patent license from Microsoft, as will enterprises that obtain these implementations from a distributor that does not have such a patent license."
While this may sound like "same ol' same ol'," I talked with Microsoft about this and was told that such patent fees will be significantly lower than required by the EU most recently, for example. It would appear that Microsoft is prepared to lower the volume on its efforts to extract money directly from its patent portfolio. If true, this is welcome news.
- Data Portability. Microsoft is developing a new set of APIs for the next revision of Office to facilitate interoperability. The company is also pledging to make it easy for customers (and competitors) to move data/content out of Sharepoint through open standards and open APIs.
Standards Transparency. "...When Microsoft supports a standard in a high-volume product, it will work with other major implementers of the standard toward achieving robust, consistent and interoperable implementations across a broad range of widely deployed products." Microsoft is also agreeing to engage openly with developers on the web and elsewhere to expose how it supports standards, including extensions it makes.
Community. "An ongoing dialogue with customers, developers and open source communities will be created through an online Interoperability Forum. In addition, a Document Interoperability Initiative will be launched to address data exchange between widely deployed formats." [Disclosure: I have been asked to serve as an advisor to Microsoft in these efforts.]
All in all, a huge day for Microsoft. Will there be gaps in Microsoft's efforts? Undoubtedly. For one thing, it hasn't really made much progress on its covenant not to sue commercial open-source providers,. But I'm impressed that it's even bothering to try. This is a testament to the power of standing firm and raising the hue and cry against proprietary lock-in.
Microsoft has listened. The real question now is how the open-source community will react. Is Microsoft too convenient a nemesis to abandon cheaply?