Most Read Latest News Blog Resources

Sam Ramji: Open source is burgeoning at Microsoft




December 23, 2008 — 
Microsoft has begun to realign its legal department, allowing it to work in collaboration with its engineers so that product teams can have more flexibility with open-source software. The company is evangelizing—internally—that more interoperability can be good for the bottom line. Microsoft's Sam Ramji, senior director of platform strategy, discussed with SD Times his company's evolution to a pragmatic viewpoint toward open source, and explained why the company is offering its support to some open-source projects that it feels advances its business and technology goals.

SD Times: Your colleague Robert Duffner [senior director of platform strategy] recently told us that product groups drive Microsoft's participation in open-source projects. How much autonomy do those groups have to work with open source?

Sam Ramji: A few very good examples [of product groups driving open-source involvement] are Windows HPC Server 2008 and System Center Operations Manager. As the Windows Server team built out its clustering HPC product, it realized that the differentiating fact of HPC clustering is the

Sam Ramji, senior director of platform strategy
scheduler and programming stack on which massively parallel applications run.

The Argonne National Lab already had MPICH [a Message Passing Interface implementation] under an open-source license. Rather than bring a new product into the market, [the HPC product team at Microsoft] realized that it would be easier to develop MPICH to the Microsoft platform. They worked with Argonne to build Windows optimization for the stack, built [MPICH] into [Windows] HPC Server, shipped, and contributed changes back to the project.

This is an example of what I have articulated before about the sustainability of open source: It is critical [for Microsoft] to have ongoing business reasons to be engaged [with open source]. Teams work with specific open-source projects to make their products better and more appealing.

The System Center upcoming release includes capacity for managing Linux and Unix servers. [The System Center product team] did analysis and realized that OpenPegasus [an open-source services broker] was well adopted and structured in the open-source community. [The team] chose to implement OpenPegasus as connectors/adapters for the upcoming System Center release. It plans to contribute back, and Microsoft joined the OpenPegasus committee.

Do you feel that it is important to contribute back to the open-source community?
The second aspect of adapting product group practices to open-source development is collaborative innovation—when different people with experiences and skills come together. Part of the reason to contribute changes back is to first pay your dues [to the open-source community], but also there is [a research & development] structural motivation to do so. If changes go back into the trunk, then maintenance is reduced. Everyone that has got that code is dealing with ongoing fixes. If part of the architecture changes, or contributions break [the application], that burden is shared.

Does Microsoft's legal department need to retool to support a broader use of open source?
Is [Microsoft's legal department] changing practices to support open source? Absolutely. There is a bumper sticker that says, "Don't drive faster than your angels can fly." While many people may not see analogy, you don't want to participate in open-source development as a large organization without the support or orchestration of the legal team.

Software is fundamentally a legal business: a copyright, patent, trademark and trade secret-based industry. Other companies, which have succeeded in hybrid models with open source and propriety software, have said that an equal partnership between engineering and legal [is needed] in order to get there.

How does Microsoft advocate open source internally?
We are driving awareness of open source within the company, and a number of like-minded thinkers and groups [are] working together across the company. Sometimes that is ad hoc, and sometimes [that is] on purpose just to keep focus on what's happening in the market.

What do developers want when you have a product strategy that requires a lot of innovation on top of it, much as Windows does?  Driving application availability is an important part [Microsoft's open-source] strategy. There is no reason not to engage with open source on a strategic, marketing and technical level.

Microsoft's development teams learn about [Microsoft's new position on] open source from publications such as SD Times. Or someone on a team will get e-mail from someone saying, "Hey, I heard we're changing our approach."

We get the word out with blogging, by holding internal events and by talking publicly. There are open-source days at Microsoft and e-mail trails inside the company. There is an open-source alias [for employees to learn about open source] and connect with others in the company that were with open-source projects and companies before they came to Microsoft, or part of the change that has been happening over past few years.

Has any of this affected how Microsoft develops its software?
There was a vibrant "what's in it" conversation about Windows Azure for open-source developers before [Professional Developers Conference]. My team and others invited … brainstorming to develop proof of concepts for things like Eclipse integration, PHP integration and Ruby integration.

That [dialog about open source] is a sign of the times and something that is really a community across the company. Employees are carrying on conversations with other [Microsoft] developers, saying, "Hey, I have an idea, and it involves open source [software] that helps us to move with a business or technology [that] we are trying to build." I think people are opening up to that [way of thinking].

We have been told that Microsoft’s Open Source Software Lab would like to begin collaborating with the SharePoint product team. Can you tell us more about that?
I think, first of all, that is a great example. SharePoint is a product that benefits from open source through the applications sitting on top of it. PHP applications like Moodle [an academic course management system that can integrate with Microsoft Office SharePoint Server 2007] and Microsoft's SharePoint Learning Kit (a commercial product that we open-sourced and made non-commercial) are examples. We have heard the conversation internally about SharePoint as an example of a platform of great opportunity for open-source application strategy.

How can the open-source community know that Microsoft is truly supporting the principles of open source development vs. doing so as a matter of convenience? I.e., "How can we trust your motives?"
That is a great question that I am asked frequently. The process of building trust is one that develops over time, based on coherence between what a person and organization say and what they do. I've been very cautious to always talk about things we are doing, have done and have shipped.

One of the things we did this year is ship documentation on internal protocols for Exchange, SQL Server, SharePoint and Office under a pretty liberal licensing scheme. We committed that any developer of any persuasion can go ahead and build implementations of any of those protocols.

We recognize that many developers are commercially minded, getting paid for time and material as consultants. We want to continue to enable that and tried to make that clear in a community promise around our interoperability principles.

Another set of protocols was announced in July and made available under the Open Specification Promise. Those ranged from .NET remoting to things like AppleTalk and IPv6. The purpose was to demonstrate through OSP that we declare peace across a wide range of industry protocols. We wanted to show that whether you are developing [in] open source or [commercially], that it is critical to have open IP for commonly adopted standards.

We were [writing] into agreements and public statements ways for developers to see that this is a development opportunity, and Microsoft is not a company that [they] have to worry about.

Will Microsoft help open-source projects that want to be interoperable with Microsoft products, like Exchange and Internet Explorer?
We have been in fact. We worked with Samba roughly a year ago. Interoperability testing is part of [Microsoft's Exchange] product development, and there is a warm integration with the Samba team directly. We work with projects related to Samba that deal with Exchange integration in France and Germany.

We do and continue to provide outreach and support to make sure [the Samba Team] have documentation to test implementations. Microsoft is sponsoring CIFS [Common Internet File System] and Active Directory [AD] Plugfest. There were attendees from the Samba project for AD, and they had satisfaction with AD Plugfest. We backed up our commitment to provide interoperability with actions to make hardware and software available for compatibility testing.

How will Microsoft improve its relations with the rest of the open-source community?
It's a path—behind and ahead of us. Each thing that we do is relevant to specific communities. For example, the Ruby community will have its own experiences and cultural narrative about what they think of Microsoft.

Open source is a broad and intriguing worldwide phenomenon. The community is a meta-community—a community of communities. Marketing to a market of markets doesn't make a tremendous amount of sense.

Saying how are we doing with the open-source community is high-level and not an informative question to answer. [Microsoft's interactions with] the Samba and PHP groups are examples of how we build trust over time. We expect to be judged on our actions.

What material work has Microsoft contributed to Apache since it joined the Apache Software Foundation in July?
We contributed support not in code, but in a Plugfest optimization-lab fashion back in February even before we joined. We had Subversion [an open-source revision control system] developers there, and developers close to the Apache Community that work on Apache HTTP Server Project and Apache Jakarta. We brought them to Redmond, treated them like a global ISV and helped … their work on top of windows.

Since then, we have continued to contribute to Apache POI, a Java-based implementation of Microsoft Office document readers and writers. We work with Apache contributors who work to add Open XML support to Apache POI. That work has had cascading effect on making that format accessible to other Apache projects for indexing and aggregating Open XML documents.

What do you exactly mean by "contribute?" At the end of the day, doesn’t it come down to code?
Contribution is in the eye of the beholder. A material contribution to the foundation is useful, and technical support and expertise is useful. Microsoft sees [Jim] Kellerman and [Michael] Stack, and their ongoing engagement [with Apache HBase], as useful.

We are beginning work with Apache Qpid [an implementation of Advanced Message Queuing Protocol] to provide optimization support [for Qpid] to run well on Windows. We put focus in areas to help Apache base development.

The key is restraint. For us, to participate means adding our voice as an element in a community of developers, not immediately stepping in, being the largest voice and taking over space previously occupied by someone else.

What motivated Microsoft to support Apache?
We identify sustainable reasons to show up and participate in different open-source communities and drive a valued ecosystem to drive sustained revenue for us. Every time someone chooses to run PHP and Java on Windows, it provides another reason for us to continue to support it. Trust comes from understanding people's motives. We have a pragmatic orientation: We have more [Windows] client and server sales opportunities by having open-source support for applications end users really like.

So which projects will Microsoft support next?
We are satisfied with the pace of our [open-source] work, and you will have more to write about in the new year. Our strong preference is to focus on things we have done, and we measure that in code written and shipping as opposed to ideas.


Related Search Term(s): Apacheopen sourceSharePointWindowsMicrosoft


Share this link: http://www.sdtimes.com/link/33132
 

Add comment


Name*
Email*  
Country     


  • Comment
  • Preview
Loading



 
 
 
 
News on Monday
more>>
SharePoint Tech Report
more>>


   

 
 
Download Current Issue
ISSUE 3/15/2010 PDF

Need Back Issues?
DOWNLOAD HERE

Receive the print Edition?


 
blogs tab
Google Code turns 5
Google Code Turns 5, and adds a Paxos Algorithm to make the system more stable and reliable.
03/17/2010 11:16 AM EST

Test your Visual Studio 2010 know-how
Microsoft is offering free beta certification exams for Visual Studio 2010.
03/17/2010 11:08 AM EST

Microsoft lifts the hood on IE9
Microsoft is previewing IE9.
03/16/2010 01:10 PM EST

 

Events calendar tab
3/22/2010 to 3/25/2010
Santa Clara, Calif.
The Eclipse Foundation

4/12/2010 to 4/14/2010
Las Vegas
Penton Media

4/12/2010 to 4/15/2010
Santa Clara, Calif.
O'Reilly Media

4/19/2010
New York City
Flagg Management

4/25/2010 to 4/28/2010
Overland Park, Kans.
IIUG