News

Microsoft Takes Bold Steps Toward Open APIs and Publishing Tech Specs

Microsoft is placing a significant emphasis on standardization and interoperability, saying it will share its APIs and release extensive documentation of its protocols.

In a major shift in its business model, Microsoft today said it is placing a significant emphasis on standardization and interoperability, saying it will share its APIs, release extensive documentation of its protocols, and is promising not to sue open source developers who use Microsoft's patented protocols for non-commercial implementations.

Microsoft CEO Steve Ballmer outlined four new interoperability principles that include ensuring open connections; promoting data portability; enhancing support for industry standards; and fostering more open engagement with customers and the industry, including open source communities.

"These steps are an important step and significant change in how we share information about our high volume products and technologies," Ballmer said during a press conference today.

While such a move was once considered blasphemy in Redmond, Microsoft in recent years has made moves inching toward today's shift. Nevertheless, Microsoft has acknowledged that it needed to take more dramatic steps to appease regulators, notably the European Commission, consumers and enterprise customers alike.

Indeed, Microsoft has been battling EC antitrust investigations for years. Two antitrust investigations were formally launched against Microsoft last month, one related to interoperability, and the other involving "tying separate products together." A January 14, 2008 statement from the EC describes the interoperability investigation as follows:

In the complaint by ECIS[ European Committee for Interoperable Systems], Microsoft is alleged to have illegally refused to disclose interoperability information across a broad range of products, including information related to its Office suite, a number of its server products, and also in relation to the so called .NET Framework. The Commission's examination will therefore focus on all these areas, including the question whether Microsoft's new file format Office Open XML, as implemented in Office, is sufficiently interoperable with competitors' products.

The EC issued another statement today regarding Microsoft's announcement: "The Commission would welcome any move towards genuine interoperability. Nonetheless, the Commission notes that today's announcement follows at least four similar statements by Microsoft in the past on the importance of interoperability."

While the timing of Microsoft announcements in light of its ongoing antitrust issues is worth noting, company officials claimed that they were not forced to open up their APIs to developers and share interoperability information.

"This is an important strategic shift in terms of how each and every engineer at the company views what their mission is and what their job is," said Microsoft's Chief Software Architect Ray Ozzie.

"As individual end users, sharing information across the Internet and putting more and more of our records in documents, interoperability's become important for end users," Ozzie added.

Microsoft's announcement today is also its strongest statement to date that it will play in the open source world. Bob Muglia, senior vice president of Microsoft's server and tools business launched the company's Open Source Interoperability Initiative "to enable engagement with the open source community," he said.

While Microsoft has a number of agreements with open source players including Novell, Xandros, and others, developers can now freely access Microsoft's APIs and communication protocols.

"Going forward developers will not even need a trade secret license, which is something that was needed for our communications protocols in the past," said Brad Smith, Microsoft's general council. "Instead, developers will be able to access this information in the same way that they access any other page of content on the Web."

Smith also said it is providing the royalty-free use of its APIs "so that any other software that calls on these APIs in Microsoft's products can do so without any concern about patent issues."

While Microsoft is making its patent licenses for its APIs and communications protocols "readily available," the company is not giving away its IP for commercial use or individual consumption.

"We will continue to view that as valuable intellectual property in all forms, and we will monetize from all users of that, not all developers, but for all users of that patented technology, all commercial developers and all commercial users of that patented technology," Ballmer said.

Ballmer's gave an overview of Microsoft's four new principles and how they will be implemented:

  • Open Connections: Microsoft will document all of the APIs and communications protocols used by Microsoft products. "Developers will not need to take a license, or pay a royalty or other fee to access any of that information," Ballmer said. Microsoft released 30,000 pages of documentation for Windows clients and server protocols that were previously available only under a trade secret license. In the coming months, Microsoft will publish additional API documentation including Office 2007 and the .NET Framework.
  • Data Portability: Microsoft is designing new APIs for Word, Excel and PowerPoint that will let developers plug in additional document formats and enable users to set those formats as their default for saving documents.
  • Standards: In addition to supporting standards, Microsoft will document extensions it makes to any standards.
  • Industry Engagements: Expanding on the Interoperability Executive Council launched three years ago, Microsoft is launching its Open Source Interoperability Initiative. "This will provide a set of technical content and other information that promotes more interoperability between Microsoft software and open source software," Ballmer said. "We will also create an ongoing dialog with customers and developers, as well as open source community, through an online interoperability forum available that will be much more broadly available than our Interoperability Executive Council."

Ballmer concluded his remarks saying that indeed Microsoft's "long-term success" depends on its ability to deliver software and services platform that is open flexible and provides customers and developers with choice.

Early reaction from some industry analysts and pundits suggests that Microsoft's timing of this announcement has a lot to do with the ISO holding meetings next week to decide whether or not Redmond's Open Office XML document format should be granted status as a certified ISO standard.

Ballmer downplayed a reporter's question as to what role that played in today's announcement. "It's certainly consistent with the notion of standards and standards support and a number of the things articulated in the principals," he said. "We will, from time to time, in conjunction with industry participants, look to lead the standardization process and sometimes we will look to be on the receiving end of implementing important standards."

About the Author

Ed Scannell is the editor of Redmond magazine, and Jeffrey Schwartz is the executive editor of Redmond Developer News magazine.

comments powered by Disqus

Featured

  • Compare New GitHub Copilot Free Plan for Visual Studio/VS Code to Paid Plans

    The free plan restricts the number of completions, chat requests and access to AI models, being suitable for occasional users and small projects.

  • Diving Deep into .NET MAUI

    Ever since someone figured out that fiddling bits results in source code, developers have sought one codebase for all types of apps on all platforms, with Microsoft's latest attempt to further that effort being .NET MAUI.

  • Copilot AI Boosts Abound in New VS Code v1.96

    Microsoft improved on its new "Copilot Edit" functionality in the latest release of Visual Studio Code, v1.96, its open-source based code editor that has become the most popular in the world according to many surveys.

  • AdaBoost Regression Using C#

    Dr. James McCaffrey from Microsoft Research presents a complete end-to-end demonstration of the AdaBoost.R2 algorithm for regression problems (where the goal is to predict a single numeric value). The implementation follows the original source research paper closely, so you can use it as a guide for customization for specific scenarios.

  • Versioning and Documenting ASP.NET Core Services

    Building an API with ASP.NET Core is only half the job. If your API is going to live more than one release cycle, you're going to need to version it. If you have other people building clients for it, you're going to need to document it.

Subscribe on YouTube