REDMOND, Wash., March 18, 2004 — Microsoft’s Shared Source Initiative, the licensing program that makes Microsoft source code more broadly available to customers, partners, developers, governments, academics and other interested individuals, is celebrating an auspicious milestone. Nearly three years after Microsoft created the Shared Source Initiative, the program has welcomed the one millionth participant into its community of users. Over those three years, as Microsoft has listened to its customers and has better understood their needs, the company has added new programs, licensing options and more and more source code to the Shared Source Initiative.
“The idea of forming a community around shared source code seemed idealistic three years ago, but customers and partners have been overwhelmingly positive, and the benefits flow both ways,” says Jason Matusow, manager Shared Source Initiative. “Microsoft serves a broad constituency, and therefore offers a spectrum of programs and licenses to meet their needs. Each source licensing program under the Shared Source Initiative is tailored to the needs of a particular community, and serves as a model for increasing code transparency in commercial software.”
Microsoft’s Shared Source Initiative has expanded greatly since it was created in May 2001. The program represents how a commercial software provider can learn from the different software models in order to provide greater value to its customers. The wide variety of source code currently licensed through the program includes Microsoft Windows 2000, Windows XP, Windows Server 2003, Windows CE 3.0, Windows CE.NET and the Rotor Shared Source CLI, as well as components of ASP.NET and Visual Studio.NET.
Meeting the Objectives of the Share Source Initiative
The Shared Source Initiative has a number of key objectives. It seeks to bolster the success of customers, partners, developers and others by granting them expanded access to Microsoft source code. The program strives to enrich the development community by providing it the tools it needs to produce outstanding software, services and other products. The Shared Source Initiative is also dedicated to placing technology in the hands of universities and research institutions to enhance educational opportunities and cultivate tomorrow’s software industry.
The program supports existing customers — including large corporations and governmental organizations — by allowing them to reference Microsoft source code to optimize performance of applications, improve security and improve development engineering. Through the Enterprise Source Licensing Program, Government Source Licensing Program, Systems Integrator Source Licensing Program, and OEM Source Licensing Program, these customers can view and debug Microsoft source code, better understand how to work with Microsoft products and improve their own internal networks.
The Shared Source Initiative has been valuable to UBS, the Swiss-based financial services company with operations in over 50 countries world-wide. UBS has participated in the Shared Source Initiative for three years, and has found that having access to source code is valuable for testing and debugging the applications that run on its internal networks. Boris Basura, a systems engineer and associate director at UBS, says that he and his team are responsible for software development in a systems engineering environment, meaning that they write small utilities and support tools for systems management of the Windows infrastructure.
“Much of our work involves debugging applications,” says Basura. “Sometimes it is difficult to find the bug, or you have a strange behavior and you don’t know where it comes from. It saves a lot of time if you can reference the source code to find out what the issue is. Otherwise, you would spend time in trial and error before you found the answer.”
As the world’s leading provider of wealth management services and one of the largest asset managers globally, UBS is extremely concerned with the security of its internal systems. “Security is a big issue for the financial services industry,” says Basura. “Every bank has technology security specialists, and they are always very interested to see how products are implemented. They want to look at the code that underlies the applications running on our systems to be certain that they are built and implemented securely.”
At UBS, having access to Microsoft source code allows security technicians to see how things are built and implemented, particularly the cryptographic APIs that encrypt and transmit data securely. “Trust is very important for banks and financial institutions,” says Basura. “Because we have access to Microsoft source code, we can better ensure that applications built on Microsoft operating systems are securely built and implemented.”
Individual Shared Source Participants
Microsoft also provides shared source reference licenses to certain individuals through the Most Valuable Professionals Source Licensing Program. Microsoft Most Valuable Professionals (MVPs) are a group of active technology leaders who have demonstrated their practical expertise by providing high quality information and content to on-line communities. MVP status is granted to individuals who have been acknowledged by their peers for their active participation in Microsoft technical communities around the globe – MVPs are not Microsoft employees. By providing MVPs with access to source code, Microsoft enables highly active members of online communities to deliver stronger support and assistance to members of the Windows community.
Phil Webster, a Microsoft MVP and founder of cSwing, a company that provides video analysis software for applications like golf, baseball and physical therapy, says that having access to Microsoft source code through the Shared Source Initiative enables him to be a more effective MVP. “Because I can look at the source code, I can respond to questions more accurately and authoritatively than I otherwise would be able to,” says Webster. “It provides the ability to understand Window APIs at a deeper level because you actually see how the code works.”
Webster, who has been part of the Shared Source program for over six months, says that having access to Microsoft source code increases his understanding of Windows and improves his technical knowledge. “The Shared Source program benefits the community by giving MVPs a resource to help them understand exactly what is happening in the source code. This enables me to provide better answers to questions from the community.”
Shared Source Code in the Classroom and Technology Development
A second objective of the Shared Source Initiative is to encourage new technology development. Through Shared Source Initiative licenses such as the CE Source Licensing Program and the C#/JScript/CLI Implementations Source Licensing Program, developers are able to download source code to test new hardware designs, optimize code for devices and create software builds. Under these programs, developers can also distribute their modifications. The CE Program in particular has been very popular with designers of embedded systems. There have been over 250,000 downloads of the Windows CE source code made available through the Shared Source Initiative.
Support for teaching and research is another objective of the Shared Source Initiative. Programs have been designed to enhance educational opportunities and cultivate a vigorous future software industry by placing technology in the hands of universities. Windows source code has been provided to 125 universities around the world for classroom and research use.
One successful academic venture has been the development and distribution of the Microsoft “Rotor” Shared Source CLI (common language infrastructure), which is based on the .NET Framework and available as a free download archive containing more than 3.9 million lines of source code. Rotor provides a full working implementation of the European Computer Manufacturers Association (ECMA) and International Organization for Standards (ISO) standards for C# and the CLI for researchers, educators and hobbyists to explore, understand and modify.
The Rotor source code can be extremely useful for academics and researchers who wish to teach and explore virtual machine technology and modern programming language concepts, and for .NET Framework developers interested in getting “under the hood” of a CLI implementation. Used in over 40 academic and research institutions worldwide, Rotor has had more than 100,000 downloads and is the subject of a special issue of IEE Proceedings on Software, a electronics engineering publication.
The University of Pisa, Italy, was one of the first universities to receive Rotor source code. Giuseppe Attardi, professor of computer science, says that when heard about the Rotor project, he was intrigued. “The idea that there could be a programming system like Rotor that allows many different programming languages to be used to write and execute applications in a common environment is very exciting. If a programming function is already available in one language, why should someone have to rewrite it in another language? One can share between languages and use each language for what it is good at. I am very glad that Microsoft decided to develop Rotor and make it available because it helps doing research in certain areas of advanced computer science like programming language design, generative and component programming.”
Prof. Attardi has had great success using the Rotor source code for teaching purposes at the University of Pisa. “I am currently teaching a course in advanced computer programming,” he says. “The Rotor source code is a good way to show the students how good technology is organized, structured, designed and implemented. The students are able to browse through the code and answer questions that we pose them on how certain things work. They can understand how it works because it is neither a toy nor an entangled mess. Rotor is a real full-blown system with 2 million lines of code.”
Prof. Attardi says that because Rotor is well-organized and coherently written, it is a good teaching tool. He recalls that last year his programming class used the Rotor code to build a content management system. “The students were scared at first,” says Professor Attardi, “so we needed to take them by the hand, but eventually they were able to understand. Content management systems are very complicated and the class split into eight groups, each with the responsibility to design a part of the system. The project took three months, and at the end an initial working prototype was produced. But it was a very interesting assignment and the students greatly enjoyed it.”
Having access to the Rotor source code allows Prof. Attardi to teach the students techniques and concepts they would not receive in other courses. “Because we had access to the Rotor source code, I was able to provide the students a hands-on experience that teaches them how programming really works. It’s a completely different learning experience than traditional, book-based learning. The Rotor course has been a great success. Not only do the current students appreciate the class work, the number of students enrolling in upcoming classes is increasing.”
Enabling New Business Opportunity
Encouraging new business opportunities is the another objective of the Shared Source Initiative. Under the CE Premium Shared Source Program (CEP), Microsoft business partners such as original equipment manufacturers (OEMs), silicon vendors, and systems integrators can not only view the code and use it for testing; they can also modify the code, create new products and services, and distribute them commercially. Furthermore, these licensees own the copyright on the modifications they create. The result is that the availability of the source code, the ability to improve that code and the creation of valuable business assets all lead to a strong incentive for companies to participate in this program.
Many industry-leading companies such as ARM Ltd., BSQUARE Corp., Hitachi Ltd., Mitsubishi Electric Corp., MIPS Technologies Inc. and Samsung Electronics have already joined the program and are developing innovative and differentiated embedded products. Companies such as Hitachi already have begun shipping devices based on Windows CE with modifications under the CEP.
Shared Source Premium code helps licensees to optimize and differentiate software and hardware for Windows CE. Because licensees have full access to the source code and the rights to modify and ship the code commercially, they can build on top of the rich Windows CE foundation to create new and innovative devices. CEP also includes a customer feedback program, which enables customer collaboration and community contribution to ongoing improvements to Windows CE products.
Matusow points to the experiences with customers such as UBS as a template for how a source access program can be beneficial. He explains that there is a balance to be struck between the provision of source code and the ability to maintain a business model based on software. “As companies look to increase their trust in the software they use, the concepts of transparency will continue to grow in importance,” says Matusow. “Microsoft’s Shared Source Initiative is addressing these needs.”
Microsoft has developed and expanded the Shared Source Initiative programs due to improved feedback processes. Matusow says the milestone one million participants in that community is a demonstration of the Initiative’s continued growth and success, and he emphasizes Microsoft commitment to continuing the long-term expansion of Shared Source offerings. “The most important lesson we’ve learned is the need for a commitment to listen and participate in the community,” he says. “As we look to expand our programs across further technologies and to more specific audiences, we are working on ways to improve our interaction with the community of source licensees.”