Hier steckt Lua drin: Eine neue Folge des beliebten Computerspiels „World of Warcraft“ wird Ende 2010 in Berlin vorgestellt.

Siegeszug in der Softwarewelt

Die meisten Computer­programme beruhen auf wenigen gängigen Programmiersprachen, vor allem von US-amerikanischen Firmen. Lua, entwickelt in Rio de Janeiro, hat sich trotzdem durchgesetzt: die Geschichte eines unerwarteten Erfolges.

Die Wikimedia-Stiftung, die Wikipedia betreibt, erklärte im Frühjahr, man werde für komplexere Seiten des Internet-Lexikons eine neue Programmiersprache suchen. Die von Wikipedia selbst entwickelte Software stieß an seine Grenzen. Zur Wahl stand zunächst neben dem gängigen JavaScript eine Alternative, die der Internetgigant Google mit Sitz im Herzen des Silicon Valley entwickelt hatte. Dann ließen die Informatiker der Stiftung ihren Blick in weitere Fernen schweifen. Sie entschieden sich schließlich für Lua – eine Skriptsprache, die von einem Erfinder-Trio im brasilianischen Rio de Janeiro stammt.

Wie hat es eine Programmiersprache aus dem globalen Süden auf die bekannteste Webseite der Welt geschafft? Die Geschichte von Lua erzählt viel über die Globalisierung der Softwareentwicklung und die Schwierigkeiten, denen findige Köpfe in Entwicklungsländern gegenüberstehen. Zum ersten Mal hörte ich vor acht Jahren davon, als ich auf Recherche in Rio de Janeiro unterwegs war, um für ein Forschungsprojekt Softwareentwickler zu interviewen. Dort traf ich „Rodrigo“, der anonym bleiben möchte. Er arbeitete gerade an einem Open-Source-Projekt, das auf einer neuen Programmiersprache basierte: Lua, entwickelt von einem kleinen Team der Päpstlichen Katholischen Universität von Rio de Janeiro (PUC-Rio).

Autor

Yuri Takhteyev

erforscht die sozialen Aspekte der Softwareentwicklung und widmet sich besonders Themen wie Globalisierung, Open Source und Software­erhaltung. Er ist Autor von „Coding Places: Software Practice in a South American City“(2012).

Die Informatikabteilung der PUC-Rio gilt als eine der besten Brasiliens, dennoch schien das Projekt wenig aussichtsreich. Denn die Softwarewelt wird von Netzwerkeffekten dominiert: Je mehr Menschen eine Software nutzen, desto wertvoller wird sie. Das gilt ganz besonders für Programmiersprachen. Informatikern, die gängige Sprachen beherrschen, stehen mehr Arbeitsplätze offen, und es gibt mehr fertige Module, die sie weiter bearbeiten können. Arbeitgeber wiederum, die gängige Programmiersprachen verwenden, können auf einen größeren Pool von Fachleuten zurückgreifen. Deshalb konnte sich von unzähligen Programmiersprachen nur eine Handvoll durchsetzen. Und fast alle stammen aus großen US-amerikanischen Firmen oder Forschungszentren. Keine, die ich damals kannte, kam aus einem Entwicklungsland.

Vor diesem Hintergrund waren Lua nur geringe Chancen einzuräumen. Ich untersuchte also vor allem, wie die brasilianischen Informatiker im Ausland entwickelte Technologien einsetzen – ein Szenario, das in Brasilien und in den Entwicklungsländern weitaus gängiger erschien. Nur um sicherzugehen, befragte ich einige meiner brasilianischen Interviewpartner nach ihrer Meinung zu Lua. Die meisten hatten noch nie davon gehört. Andere wussten zumindest, dass es etwas war, woran „diese Jungs“ an der PUC-Rio arbeiteten. Sie waren wenig zuversichtlich, dass es sich durchsetzen würde.

Meine Auffassung von Lua änderte sich ein Jahr später, als ich – zurück in Kalifornien – auf einer populären Internetseite für technische Nachrichten einen Artikel über das Programm las. Lua hatte anscheinend außerhalb Brasiliens einige wenige, aber umtriebige Anhänger gefunden. Es wurde in zahlreichen Produkten angewendet, darunter in „World of Warcraft“, einem ungemein populären Onlinespiel, bei dem die Spieler mit Hilfe von Lua ihre Benutzeroberfläche individuell anpassen können. Da kam mir zum ersten Mal der Gedanke, dass mir bei meinem Besuch in Brasilien vielleicht doch etwas entgangen war.

Ich beschloss, einige Monate mit Rodrigo an seinem Projekt in einem kleinen Betrieb in Rio mitzuarbeiten. Ich wollte die Autoren und Mitentwickler von Lua interviewen, Treffen von Lua-Programmierern besuchen und weitere Firmen finden, die die Sprache nutzen. Der erste Teil des Plans war relativ leicht zu verwirklichen. Die anderen beiden nicht: Es gab keine Lua-Veranstaltungen, und ich fand in Rio nur ein einziges anderes Unternehmen, das die Sprache verwendet. Wie sich zeigte, besteht ein enger Zusammenhang zwischen dem Erfolg der Sprache im Ausland und ihrer geringen Bekanntheit im eigenen Land.

Lua ist international erfolgreich, weil es eine Nische besetzt hat

Softwareprojekte existieren nicht im luftleeren Raum. Gewöhnlich sind sie eingebettet in ein Beziehungsgeflecht verschiedener Initiativen, Leute und Organisationen. Ein Projekt, das am richtigen Ort entsteht – etwa in den Labors eines größeren Unternehmens im Silicon Valley – kann sich auf diese „Seilschaften“ verlassen, damit es international wahrgenommen wird. JavaScript etwa wurde in den 1990er Jahren für den Netscape Navigator entwickelt, den seinerzeit populärsten Webbrowser. Diese Ausgangssituation hat JavaScript zu einer der gängigsten Programmiersprachen weltweit gemacht, obwohl viele IT-Fachleute ihm zahlreiche Mängel vorwerfen.

Ein Projekt hingegen, das an einem Ort wie Rio de Janeiro entsteht, hat viel größere Anlaufschwierigkeiten. Um andernorts Aussichten auf Erfolg zu haben, muss es mobil werden und sich aus seinem ursprünglichen Zusammenhang entfernen. Ursprünglich entwickelt wurde Lua in den frühen 1990er Jahren für Tecgraf, eine Joint Venture zwischen der PUC-Rio und Petrobas, Brasiliens größtem Ölkonzern. Die Einbettung in Software für Petrobas war für Lua ein guter Ausgangspunkt, weil das Ölunternehmen für seine Innovationsfreudigkeit bekannt ist. Um global Erfolg zu haben, musste sich Lua jedoch von seinen nationalen Verbündeten freimachen und international nach Freunden Ausschau halten.

Die Firmen­­zentrale von Google im Silicon Valley. Wer hier sitzt, hat mehr Chancen mit der Hilfe von Netzwerken und Kontakten seine Innovationen auf den Markt zu bringen.Bloomberg Via Getty images

Vor diesem Hintergrund entschieden sich die Schöpfer der Programmiersprache, die Bedienungsanleitung in Englisch zu verfassen. Für die Informatiker der Wikimedia-Stiftung war die hervorragende Dokumentation einer der Gründe, Lua den Vorzug vor Googles JavaScript-Alternative zu geben. Für potentielle Lua-Nutzer in Brasilien sieht das ganz anders aus. Das bekannteste Buch über das Programmieren mit Lua, geschrieben von einem der Lua-Entwickler, einem Professor an der PUC-Rio, ist nicht auf Portugiesisch erhältlich. Vor 2007 gab es für das Programm überhaupt keine portugiesische Dokumentation, so dass alle brasilianischen Nutzer gute Englischkenntnisse mitbringen mussten. Vorrangig eine portugiesische Dokumentation zu erstellen, hätte ihr Leben deutlich einfacher gemacht. Gleichzeitig hätten sich damit Luas Chancen verringert, für ein Projekt wie Wikipedia ausgewählt zu werden.

Lua ist international erfolgreich, weil es eine Nische besetzt hat. Endnutzer haben damit eine einfache Möglichkeit, das Verhalten eines Softwareproduktes zu programmieren, ohne allzu sehr in die Tiefe zu gehen. Viele Projekte weltweit brauchen genau das, in Rio de Janeiro hingegen sind es eher wenige. Hier drehen sich die meisten Softwareprojekte um die Entwicklung von Internetanwendungen. Dafür eignet sich Lua aber nur schlecht. Rodrigos Unternehmen wollte das ändern – sein Projekt lief darauf hinaus, Lua auf Internetentwicklung auszudehnen.

Es reicht aber nicht, die lokalen Verbindungen zu kappen. Globale Verbindungen müssen entstehen und gepflegt werden. Im Falle von Lua war es ein glücklicher Umstand, dass seine Schöpfer Teil der internationalen Hochschulwelt waren. 1996 veröffentlichte das Entwicklerteam einen Aufsatz in einer US-Zeitschrift, die von vielen amerikanischen Softwareentwicklern gelesen wird, darunter Videospielentwicklern von LucasArts. Sie beschlossen, Lua für eines ihrer Spiele zu verwenden, und dank ihnen gewann Lua rasch Freunde an den richtigen Stellen. 1998 bewarb LucasArts Lua bei der Games Developer’s Conference, dem weltgrößten Event für Spieleentwickler im kalifornischen San José. Kurz danach entschieden sich weitere Unternehmen, die Sprache in ihre Produkte einzubauen.

Die Geschichte von Lua zeigt keinen Königsweg für Entwickler aus dem globalen Süden

Luas relative Isolierung in der Anfangsphase erwies sich als unerwartete Stärke. JavaScript ist zwar weit verbreitet, gilt aber oft als „hässliche“ Sprache. Diese Hässlichkeit ist die Kehrseite der Popularität: Die Sprache hat im sogenannten Browser-Krieg der späten 1990er Jahre ihre Narben davon getragen, als Netscape und Microsoft um ihre Anteile am Browser-Geschäft kämpften. Es ist fast unmöglich, Abhilfe für die Probleme von JavaScript zu schaffen, weil es überall eingesetzt wird. Man müsste Millionen Webbrowser und Internetseiten korrigieren, die mit älteren Versionen von JavaScript laufen. Lua hatte dagegen mehrfach die Gelegenheit, sich selbst neu erfinden. Da man in der frühen Phase keine kommerziellen Verwendungsmöglichkeiten sah, entschied das Team, das Programm kostenlos zur Verfügung zu stellen. Seitdem lag der Schwerpunkt auf Eleganz und Nutzerfreundlichkeit.

Die Lua-Strategie hat dem Programm zu weltweitem Erfolg verholfen. Für Rio de Janeiro und Brasilien jedoch hat dieser Erfolg kaum direkten Nutzen gebracht. Rodrigos Projekt, Lua für die Webentwicklung weiterzuentwickeln, liegt größtenteils auf Eis. Rodrigo selbst arbeitet heute wieder mit JavaScript. Trotzdem heißt es in Softwarekreisen in Kalifornien inzwischen etwas häufiger: „Entwickelt in Brasilien“.

Hätte das Lua-Team das Programm für Brasilien besser nutzbar machen können, wenn sie sich auf lokale Anwendungen konzentriert und es eng in das lokale Innovationssystem eingebettet hätten? Wohl kaum. Zwar wird gern die Bedeutung lokaler Innovationen betont, wenn es um Strategien der Technologieentwicklung geht. Doch nur wenige Informatiker in Rio sind interessiert an vor Ort entwickelten Lösungen. Ob aufgrund von Vorurteilen oder Pragmatismus – Informatiker in Brasilien schauen über die Landesgrenzen hinweg und versuchen, ihre Probleme mit derselben Technologie zu lösen, die ihre Kollegen weltweit nutzen. Sie werden sich erst auf Lua besinnen, wenn es sich global etabliert hat. Wie es ein langjähriger Lua-Fan ausdrückte: „Lua muss im Ausland Erfolg haben, damit es zu Hause akzeptiert wird.“

Die Geschichte von Lua zeigt keinen Königsweg für Entwickler aus dem globalen Süden. Für den globalen Erfolg müssen sie den lokalen Bezug verleugnen, um dann – wenn alles gut gehen sollte – im Triumph nach Hause zurückzukehren. Aber eine Garantie ist das nicht, es ist ein Weg voller Unwägbarkeiten. Entwickler aus dem Süden haben schlechte Karten: Sie leben am falschen Ort, sprechen die falsche Sprache und sind nicht mit den richtigen Institutionen verbandelt.

Doch die Alternativstrategie, mit Innovationen auf lokale Märkte zu zielen, ist auch keine Lösung. In einer von Netzwerkeffekten dominierten Welt setzen auch lokale Nutzer auf globale Lösungen. Das bedeutet, dass Innovationen an der Peripherie schwierig bleiben. Doch eine ganze Menge Leute versuchen genau das – so dass in den nächsten Jahren hoffentlich noch ein paar weitere Luas aus Brasilien, China und Russland kommen. Aber das meiste Geld mit diesen Projekten wird wohl weiter an Orten wie San Fran­cisco verdient.

Aus dem Englischen von Barbara Kochhan

erschienen in Ausgabe 7 / 2013: Neues Wissen im Blick

Neuen Kommentar schreiben