Die Meldung klang spektakulär und wurde ein wenig so gefeiert wie jene Aussage von Günter Schabowski, mit der dieser am 9. November 1989 eher versehentlich die Öffnung der Berliner Mauer ankündigte. Was war geschehen? In seinem Blog kündigte Microsoft-Manager Scott Guthrie (offenbar zur Zeit «der heimliche Chef» der Microsoft-Entwicklerabteilung) vor wenigen Tagen an, dass «demnächst» die Quellen der
.NET-Klassenbibliothek 3.5 freigegeben würden. Eine Sensation?
Nicht unbedingt. Zum einen gab es von Anfang an unter dem Namen Common Language Infrastructure (CLI) eine quelloffene Variante des .NET-Framework, die neben einer (von patentrechtlich heiklen Passagen) befreiten CLR auch den Kern der .NET-Klassenbibliothek enthielt, die später sogar auf die Version 2.0 aktualisiert wurde. Zum anderen sind Reflector-Tools inzwischen soweit perfektioniert, dass sie den IL-Code jeder .NET-Klassenbibliothek in beinahe perfekt lesbaren Quellcode umwandeln können.
Eine Sensation war die Freigabe des Quellcodes unter dem «Shared Source»-Lizenzmodell damals auch nicht. Mir ist kein Entwickler bekannt, der sich jemals mit den Quellen beschäftigt hat (von den Mono-Entwicklern, denen es angeblich per Vertrag «verboten» ist, Reflector-Tools zu benutzen, einmal abgesehen). Das Projekt schlief offenbar irgendwann ein, der damalige Initiator des Projekts, David Stutz, hat das Unternehmen längst verlassen. Allerdings nicht ohne seinem damaligen Arbeitgeber die Warnung mit auf den Weg zu geben, dass Open Source eine grosse Gefahr für
Microsoft im allgemeinen und für Windows im speziellen sei. Das war 2003.
Vier Jahre später scheint es so, als zeigten die warnenden Worte, die Hyperaktivität der Open-Source-Bewegung und eine veränderte Landschaft, in der es keine künstlich am Köcheln gehaltenen Rivalitäten mehr zu geben scheint, ihre Wirkung. Die Closed-Source-Mauer zeigt deutliche Risse.
Die Einigung mit
Novell, die Tatsache, dass Microsoft infolgedessen auch Linux-Lizenzen zu verkaufen beabsichtigt, die Ankündigung, dass das Mono-Team bei Novell ganz offiziell für die Implementierung von Silverlight unter Linux zuständig ist (es ist meines Wissens das erste Mal, dass Microsoft eine strategisch bedeutsame Entwicklung an einen ehemaligen Mitbewerber «outsourced»), «Open Specification Promises», durch die Entwickler verschiedene von Microsoft entwickelte Web-Service-Spezifikationen implementieren dürfen, ohne befürchten zu müssen, dass der Konzern irgendwann mögliche Patentverletzungen geltend macht, und nicht zuletzt nette URLs wie
http://www.microsoft.com/opensource oder
http://port25.technet.com, auf denen sich alles um das Thema Open Source dreht, belegen einen eindeutigen Trend, von dem alle profitieren werden. In die Freigabe der .NET-Libraries sollte man aber nicht zu viel hineininterpretieren.
Und: Die Libraries werden lediglich unter der restriktiven Reference License freigegeben. Anschauen erlaubt, Änderungen und Nutzung in eigenen Projekten dagegen verboten. Sehen wir das Ganze also unter dem Aspekt vertrauensbildender Massnahmen und als Entgegenkommen für einige Hardcore-Entwickler, die beim Debuggen künftig die
.NET-Libraries direkt einbeziehen können.