Microsoft und Open Source

Vom Saulus zum Paulus

18.02.2009
Von Markus Franz

Echte offene Lizenzen von Microsoft

Daneben offeriert Microsoft aber auch zwei richtige Open-Source-Lizenzen, die von der OSI (Open Source Initiative) offiziell als freie Lizenzen anerkannt wurden. Die Microsoft Public License (MS-PL) ist das beste Beispiel, dass sich Microsoft durchaus konsequent in Richtung Open Source bewegt: Der Quellcode von Software unter dieser Lizenz muss frei verfügbar sein und darf jederzeit für kommerzielle und nicht-kommerzielle Zwecke weitergegeben werden, sofern das neue Werk erneut unter die MS-PL gestellt wird. Binaries, also kompilierter Code, dürfen sogar unter jeder Lizenz weitergegeben werden, die mit der MS-PL kompatibel ist.

Die Microsoft Public License ist die erste Lizenz von Microsoft, die vollständig zur GNU Public License (GPL) kompatibel ist. Seit Oktober 2007 ist so offiziell bestätigt, dass die Linux- und Windows-Communities ein Stück näher zusammenrücken. Ebenfalls anerkannt als offizielle Open-Source-Lizenz wurde die Microsoft Reciprocal License (MS-RL). In Anlehnung an die GNU Lesser Public License (LGPL) ist die MS-RL für Frameworks oder Bibliotheken gedacht, die das geistige Eigentum an der darunter veröffentlichten Software weiter schützen sollen.

Plattformen für die Community

Neben den Initiativen im eigenen Haus versucht Microsoft, das vielzitierte Open-Source-Ökosystem um die eigenen Produkte und Technologien aufzubauen. Dazu betreibt der Hersteller mit CodePlex und Port25 zwei ausgereifte Plattformen im Internet, die Impulse in der Open-Source-Szene setzen sollen.

CodePlex ist das Gegenstück zu SourceForge: Die Website agiert als kostenloser Hosting-Provider für Communities, die gemeinsam an Open-Source-Projekten arbeiten. Jeder Entwickler kann sich dort einen Zugang einrichten und mit Gleichgesinnten gemeinsam an Quellcode arbeiten. Unterstützung bieten dabei integrierte Wikis, Diskussionsforen, Lizenzmanagement, Möglichkeiten zur Verwaltung von Bug- und Support-Tickets sowie umfangreiche Statistiken über das eigene Projekt und dessen Mitarbeiter. Am interessantesten ist aber, dass auf dem Server der Microsoft Visual Studio Team Foundation Server arbeitet, über den man komfortabel gemeinsam Quellcode verwalten kann. Besondere Beachtung schenkt Microsoft dabei auch der Anbindung von Subversion-Clients, die sich im Linux-Umfeld als Standard für die Softwareentwicklung etabliert haben: CodePlex hat eine voll funktionsfähige Schnittstelle für Subversion, sodass man Quellcode auch über Betriebssystemgrenzen hinweg gemeinsam entwickeln kann und insbesondere nicht an Visual Studio als Entwicklungsumgebung gebunden ist. Sogar Eclipse freundet sich so leicht mit CodePlex-Projekten an. CodePlex selbst wurde in C# und ASP.NET implementiert und läuft im Hintergrund mit dem Team Foundation Server.

Wer sich mehr für die grundsätzliche Richtung zu den Themen Open Source, Interoperabilität, freie Technologien und Plattformen interessiert, ist bei Port25 richtig. Das unter dem Technet-Label gestaltete Onlineangebot wird regelmäßig mit Fachartikeln und Tipps aufgefüllt. Microsoft möchte so eine Community für die eigene Strategie bilden, mit der man aktiv diskutieren kann. Das funktioniert bei Port25 recht gut: Die Website verzeichnet nach eigenen Angaben ein hohes Wachstum an Besucherzahlen. Microsoft stellt dort in den Bereichen Server und Entwickler regelmäßig Lösungen vor, die Benutzern der eigenen Software die Zusammenarbeit mit Linux, Unix und anderer freier Software erleichtert. Eine Schlüsselrolle spielt Port25 auch bei der Unterstützung von Open-Source-Events und der Apache-Foundation.

Unterm Strich sieht Microsoft CodePlex eher als externes Projekt, auf dem sich die Community austoben kann. Der Hersteller selbst stellt dort aktiv Quellcode einzelner Projekte ein, die als Open-Source-Software freigegeben sind. Port25 dagegen ist eher ein Kommunikations- und Diskussionskanal, über die Open-Source-Teams bei Microsoft auf eigene offene Anwendungen und Technologien hinweisen und Anregungen aus der Community aufnehmen.