The GIMP  

Marc Lehmann  
 
 
 
 

In der nächsten Viertelstunde möchte ich Ihnen etwas über ein Programm namens GIMP erzählen. Und das Wichtigste vorab ist dieses kleine Tierchen hier. Das nennt sich Wilbur. Wilbur ist ein GIMP, und was viel wichtiger ist: er wurde auch mit dem GIMP gezeichnet. Das GIMP ist ein Malprogramm oder auch ein Bildverarbeitungsprogramm. Man kann auch Fotos damit manipulieren. Und als Beispiel habe ich gleich mal einen Screen-Shot mitgebracht.  
 

  
 
Links oben sieht man den eigentlichen GIMP. Das ist im Prinzip nur ein Fenster mit Werkzeugen, da kann man dann Bilder laden. Hier zum Beispiel ein Photo vom letzten europäischen GIMP-Entwickler-Treffen in kleiner Runde. Hier unten der Linux-Pinguin, der ursprünglich auch mit dem GIMP gezeichnet wurde. Und als kleines Beispiel, was man so machen kann, habe ich hier die Tür -- die war vorher auf dem Originalbild völlig schwarz, im Schatten gelegen -- jetzt mit einem Selektierwerkzeug ausgeschnitten und hier mit einem Kontrastverstärkungswerkzeug soweit heller gemacht, daß man sehen kann, was im anderen Raum für Gegenstände stehen.  

Hier habe ich einen Zeitpfeil über die Entwicklung der einzelnen wichtigen Schritte. Anfang 1995 steht da die graue Vorzeit. Da haben zwei Programmierer, die gerade in einer furchtbar langweiligen Vorlesung über Compiler saßen, sich gedacht: 'Das kann die Welt nicht sein. Wir können nicht einfach so langweilige Programme schreiben. Wir machen jetzt irgendetwas Sinnvolles. Nicht irgendeinen Test für unseren Professor, sondern wir schreiben jetzt ein Programm, das die Welt braucht.' Und damit war die Idee eigentlich auch schon geboren. Die beiden haben dann mehr oder weniger im Stillen neun Monate lang an diesem Programm gearbeitet und sind Anfang 1996 an die Öffentlichkeit getreten mit der Version 0.54.  

GIMP ­ der Name ist eine Abkürzung ­ stand ursprünglich, wie es jetzt hier auf dem Programm steht, für General Image Manipulation Program, also ein allgemeines Bildmanipulationsprogramm. Inzwischen wurde es umbenannt. Man hat mich nämlich hingewiesen, daß ich das unbedingt noch sagen muß. Es ist neuerdings das GNU Image Manipulation Program. Und das deutet auch an, unter welcher Lizenz es verfügbar ist. GIMP selbst ist unter der GPL erschienen, das heißt, wenn irgendwelche Erweiterungen oder Verbesserungen stattfinden und die veröffentlicht werden, profitieren wir im allgemeinen davon. Die Schnittstelle aber, und das ist das Wichtige, wenn man GIMP mit eigenen Effekten weiter ausstatten möchte, ist jetzt unter der LGPL. Die Unterschiede werden irgendwann in einem anderen Vortrag genau erklärt. Der wichtigste Punkt ist da, daß Firmen beispielsweise sagen: 'Nun gut, wir können jetzt für Photoshop...' -- das ist quasi die kommerzielle Variante vom GIMP [Gelächter] ... GIMP ist gut! Man soll sich da nichts vormachen. Da braucht man sich nicht verstecken. '... wir können jetzt ein kommerzielles Plugin entwickeln. Das gibt es dann nur als Binärformat, und wenn GIMP das nicht erlaubt, gibt es eben keine Version für GIMP.' Und deshalb ist diese Erweiterungsschnittstelle für GIMP von der Lizenz so gehalten, daß man auch binär Erweiterungen schreiben kann, ohne daß man den Quellcode herausgeben muß.  

GIMP 0.54, das ist ja bei den meisten Software-Projekten so, daß die Version unter 1 noch eher instabil, eher noch nicht so ausgereift ist, und mit der Version 1.0 ist dann zum ersten Mal ein richtig stabiler Punkt in dem Programm erreicht. Das ist also nicht so, wie bei kommerziellen Programmen, wo die Version 6.0 zum ersten Mal nicht nach fünf Minuten abstürzt. GIMP 0.54 hatte aber auch einige Probleme, denn, um die ganzen Bedienelemente zu zeichnen, diese Knöpfe, die Fenster, hat es ein Toolkit eingesetzt, das nennt sich Motif, das kennen die meisten. Das ist aber kein freies Projekt. Man kann den Quellcode zwar für viele viele tausend DM kaufen, aber kaum jemand hat ihn und auch kaum jemand hat Motif. Und vor allem nicht auf freien Betriebssystemen, wo man sich das einfach nicht leisten kann, ein paar hundert Mark nur für so einen Toolkit auszugeben. Deshalb haben die beiden Programmierer gesagt: 'Das erste, das wir tun müssen, ist, Motif zu ersetzten.'  

Das ist so schrittweise in der Version 0.60 passiert. Das war eine Version, die lief überhaupt nicht stabil, weil da jede Woche ein ganz neues tolles Feature reinkam, und jede Woche wurde irgendetwas umgestellt. Das war also nur für Entwickler. Mitte 1996 war es dann soweit, daß dieses GIMP 0.54 so eine weite Verbreitung hatte, daß die Leute einfach sagten: 'Wir wollen jetzt auch mitentwickeln, wir wollen vor allem auch mitbestimmen nach dem Motto 'Ich brauche aber unbedingt Farbtrennung,' oder: 'ich brauche unbedingt dieses oder jenes Feature.' Und deshalb wurde die Mailingliste, die das Hauptwerkzeug zur Kommunikation unter den Entwicklern war, ersetzt durch zwei, nämlich eine, wo sich quasi die ganzen Benutzer tummeln können, und eine andere, die eine Art stilles Refugium für die Entwickler war. Die waren zwar immer noch frei zugänglich, aber das hat sehr viel geholfen, weil die Entwickler wieder ein Medium hatten, wo sie größtenteils unter sich waren.  

Anfang 1997 wurde dann unter anderem Wilbur gezeichnet, deswegen ist er hier noch einmal drauf. Und es gab auch die erste Version, die so einigermaßen gut lief und vor allem völlig unabhängig war von irgendwelchen kommerziellen Softwarepaketen. Damals wurde auch ein IRC-Server speziell für GIMP erstellt. Ein IRC-Server ist ein Internet-Chat-System, wo man im Gegensatz zu einer Mailingliste in Echtzeit miteinander reden kann. Das ist etwas, was auch GIMP von vielen anderen Softwareprojekten unterscheidet, es gibt nämlich nicht nur eine Mailingliste.  

Die Version 0.99 hatte als wichtigste Neuerung ein eigenes Toolkit. Das hatte ich schon gesagt, das nennt sich Gtk+. Dieses Toolkit wurde dann, weil es für sich allein so gut war, zu einem eigenen Projekt. Das ist auch heutzutage noch ein Extra-Projekt. Das hat also mit GIMP nicht mehr direkt etwas zu tun, und das sind auch unterschiedliche Entwickler.  

Dann ein ganz wichtiger Meilenstein Mitte 1998: Da gab es zwei Benutzer, die haben sich gesagt: 'Schönes Programm, leider weiß niemand, wie man es bedient, also brauchen wir ein Handbuch.' Und sie haben ein zweihundertseitiges Buch geschrieben, das GIMP Users Manual. Das war eine Riesenleistung. Sie haben es inzwischen auf über 600 Seiten erweitert. Das gibt es gedruckt. Man kann es also kaufen, man muß es aber nicht. Es gibt es auch im Internet, d.h., das Handbuch ist, genauso wie die Software, frei erhältlich.  

Anfang 1998 wurde dann das GNOME-Projekt gegründet. Das GNOME Projekt -- haben wir hier heute auch schon öfters gehört -- ist ein Desktop-System, das alle Programme, die man beim täglichen Arbeiten braucht, wie File-Manager oder auch kleine Office-Sachen anbieten möchte. Das hat direkt mit dem GIMP nichts zu tun, aber es benutzt auch dieses Gtk-Toolkit. Das heißt, dadurch, daß aus GIMP diese ganzen schönen Routinen in das Gtk-Paket ausgekoppelt wurden, konnten auch andere Projekte davon profitieren. Das GNOME-Projekt ist inzwischen quellcode-zeilenmäßig wesentlich größer als GIMP. Es gibt über 230 Programme, die alle unter dem GNOME-Dach leben. GIMP hat, wie gesagt, nicht direkt etwas damit zu tun. Es ist nur eine historische Verbindung, daß man sich auf die gleichen Grundlagen bezieht.  

Es hat sehr lange gedauert bis es dann Mitte 1998 erst die erste 1.0-Version vom GIMP gab. Zwischendrin gab es im Prinzip nur instabile Versionen, die manchmal sehr stabil waren, manchmal gar nicht, also nichts, was die Benutzer benutzen sollten. Das hat also sehr lange gedauert, und das lag daran, daß die beiden Entwickler, die ursprünglich dieses Programm geschrieben haben und das Projekt auch gemanaged haben, irgendwann ihren Universitätsabschluß gemacht haben. Und die waren dann vom einen Tag auf den anderen einfach weg. Die haben nicht gesagt: 'So, wir haben jetzt keine Zeit mehr, Wir arbeiten jetzt nicht mehr mit,' sondern von einem Tag auf den anderen waren sie einfach nicht mehr da. Das hat dazu geführt, daß da recht anarchische Zustände Einzug gehalten haben, weil niemand so recht wußte, wer macht jetzt überhaupt irgendwelche GIMP-Versionen, wer veröffentlicht die? Dann haben das irgendwelche Leute gemacht, und einige davon haben sich als besonders fähig herausgestellt. Die haben dann Versionen herausgegeben und die Entwicklung ist wieder in Gang gekommen.  

Heute sind wir bei GIMP Version 1.1. Das ist wieder eine instabile Version, und wir steuern auf die 1.2 zu, aber das dauert möglicherweise auch noch einige Monate, vielleicht auch ein Jahr. Wir wissen es nicht, wir haben keinen definitiven Termin.  
 
 
  
Hier habe ich noch einen Screen-Shot. Der ist zugegebenermaßen sehr verwirrend. Niemand wird so mit diesem Programm arbeiten. Aber es zeigt, daß es doch ein bißchen mehr kann, als nur irgendwelche Bilder drehen oder so, sondern inzwischen gibt es, wie man hier in diesem Menü sieht, über vier- oder fünfhundert Effekte, die es kann. Und damit muß man natürlich umgehen können, was ein Problem ist, weil, bis man so einen Effekt in den vielen Menüs dann auch gefunden hat, selbst wenn man sich gut auskennt, vergehen doch manchmal 10 bis 20 Sekunden. Das ist eine ziemlich lange Zeit, um ein Menü zu durchsuchen.  

Wie läuft die Entwicklung ab? Wenn ich meinem Vater erzähle: 'Du, ich arbeite da an so einem ganz wichtigen, tollen Projekt, es ist unheimlich eine prestigetträchtig, wirklich toll,' dann ist die erste Frage: 'Ja, und wie viel verdienst Du dabei?' Es ist natürlich bei der freien Software... Ja, ich kriege ab und zu mal ein nettes Dankeschön oder, wenn ich mal ganz wichtig werden sollte, kriege ich vielleicht von einer Firma etwas gesponsort, vielleicht ein Grafiktablett, aber die wollen ja auch wieder etwas dafür.  

Viel wichtiger ist die zweite Frage. Und die ist dann immer: 'Und wer sagt Dir, was Du da machen sollst? Wer gibt Dir quasi die Befehle? Was entwickelst Du?' Bei GIMP ist das wie bei vielen freien Projekten so: Es gibt natürlich niemanden, der irgend etwas zu sagen hat. Wir haben auch kein Board of Directors, keinen Verein oder irgendetwas Offizielles, sondern es sind einfach die Leute, die da an diesem Projekt arbeiten, die regelmäßig viel tun. Die sind dann automatisch Entwickler. Es kann auch jeder werden. Im Prinzip muß man sich dazu nur auf die Mailingliste subscriben lassen. Und wenn man dann viel Sinnvolles von sich gibt, dann muß man nicht noch nicht einmal mehr irgendetwas schreiben. Wenn man gute Ideen hat, gut diskutieren kann, ist man natürlich Teil dieser Entwicklergemeinde, dieser Community 

Ich habe schon gesagt, das grundsätzliche Kommunikationsmittel ist eMail und -- was mehr oder weniger einzigartig ist -- dieser IRC-Server. Wenn es keine direkte Hierarchie gibt, gibt es natürlich auch niemanden, der bei Streitfällen, wenn es irgendwann mal Zoff gibt -- den gibt's ja immer -- niemanden, der da schlichten kann. Bei Apache haben wir jetzt gehört, wenn ein Patch, eine Änderung nicht von allen akzeptiert wird, kommt er auch nicht rein. Wenn es bei GIMP so wäre, dann wären wir heute noch bei Version -15 oder so. Dann hätte niemand irgend etwas reingebracht, denn es gibt immer jemanden, der meckert.  

Auf ein Problem möchte ich gesondert noch eingehen. Ende 1998 war es so, daß auf dieser eigentlichen Mailingliste jede Menge Müll zu lesen war. Da gab es also jede Menge Leute, die dachten: 'Ja, wir müssen jetzt unbedingt unseren Senf zu diesem Projekt dazugeben.' Aber eigentlich kam dabei nichts raus, und die Entwickler, die darin arbeiten wollten, haben sich gesagt: 'Warum lesen wir den Quatsch eigentlich noch?' Denn 90% der Postings auf dieser Mailingliste kann man sowieso wegschmeißen. Das ganze nennt man übrigens den Signal-to-Noise Ratio, also das Verhältnis zwischen Nutzdiskussionen und Müll oder Rauschen, also Information, die einfach unwichtig ist, und das war da sehr hoch. Das hat dazu geführt, daß die Entwickler natürlich gar nichts mehr von dieser Mailingliste gelesen haben.  

Und da kam also jemand, der Daniel Eggert, der hat sich damals sehr sehr viel Arbeit gemacht und hat den GIMP internationalisiert. Das heißt, er hat ursprünglich erstmal alle Menüs auf Deutsch übersetzt, und er hat vor allem den Quellcode so umgestellt, daß man weitere Sprachen sehr einfach einbinden kann. Das ist für die Verbreitung ja nicht unwichtig. Das Ganze war sehr sehr viel Arbeit, vor allem stupide Arbeit, weil man ja jeden einzelnen Text in dem Programm irgendwo suchen und ersetzen muß durch etwas Deutsches. Das hat er auf der Mailingliste groß angekündigt, aber niemand hat ihn gelesen, niemand wußte davon. Und diejenigen, die es gesehen hatten, dachten: 'Es ist nicht mein Problem, das macht irgend jemand anderes. Irgend jemand schaut sich den schon an.' Daniel Eggert ist nach einem Monat ein bißchen sauer geworden, weil er sagte: 'Was habt Ihr denn? Ich habe da etwas Tolles gemacht, und Ihr habt nicht mal gesagt 'das ist schlecht.' Ihr habt gar nichts dazu gesagt.' Und dann hat er etwas gemacht, was für ein freies Software-Projekt den Untergang bedeuten kann oder zumindest sehr schlecht ist, und zwar hat er einen Split herbeigeführt. Man kann sich das so vorstellen: bei GPL-Software oder auch bei anderen, bei BSD-Lizenz-Software kann man ja den Quellecode nehmen und einfach kopieren und sein eigenes GIMP-Projekt, sein eigenes Apache-Projekt aufziehen. Und genau das hat er versucht. Er hat so gesagt: 'Die Entwickler sind alle tot, die sagen nichts mehr, die gibt es nicht mehr. Ich habe jetzt meinen eigenen GIMP. Wer etwas entwickeln will, soll zu mir kommen, und dann machen wir eine Entwicklung.' Es war einfach ein Split, weil das Projekt zerteilt, innerlich zerrissen wurde. Es ist klar, wenn dann zwei verschiedene Gruppen entwickeln, macht die eine Fortschritte und die andere Fortschritte, aber das Projekt an sich profitiert nicht von der besten Möglichkeit. Und die Benutzer stehen dann irgendwann davor und sagen: 'Ja, es gibt da ein DIMP oder GIMP oder vielleicht auch ein BIMP, was nehme ich denn jetzt von den vielen Programmen? Welches ist dann das beste?'  

In diesem Fall war dieser Split nicht sehr wichtig. Es hat sich herausgestellt, daß praktisch niemand daran interessiert war, und inzwischen sind auch die ganzen Änderungen von Daniel Eggert im echten GIMP eingebaut. Das Ganze hatte auch einen positiven Effekt, denn inzwischen lesen alle Entwickler auch wieder diese Mailingliste, und die meisten Diskussionen werden nicht mehr privat geführt, sondern tatsächlich wieder öffentlich. So ein kleiner Schock kann manchmal Wunder wirken.  
  

(Transkription Elena Nowak)