Dienstag, 16. April 2024

Archiv


Die Ästhetik des Quellcodes

IT.- Ob Internet, Facebook, Lkw-Maut, Roboter oder Touchscreens – all diese Dinge würden ohne eine Sache nicht funktionieren: Programmcode. Diesen Code vergessen wir oft, und die Menschen, die ihn schreiben, treten nur selten in Erscheinung. Ein Porträt zweier Programmierer aus zwei Generationen.

Von Achim Killer | 25.02.2012
    Vincenz Dölle ist 25 und studiert Informatik an der TU München. Nebenbei programmiert er als Freiberufler. Und zusammen mit Freunden hat er eine Firma gegründet, die Supercomputer-Anwendungen für die Cloud entwickelt. Software muss funktionieren, sagt er, und – schön sein:

    "Ästhetik ist der Code an sich, also dass der Code sich gut liest. Das ist natürlich für Informatiker sehr wichtig. Man liest sehr viel mehr Code, als man schreibt. Inwieweit einfach das Gesamte einen schlüssig sinnvollen und eben auch für den Code-Leser nachvollziehbaren Stil hat."

    Vor ein paar Jahren wurde Vincenz Dölle Landessieger bei Jugend musiziert. Und dementsprechend betont er die quasi künstlerische Freiheit beim Programmieren. Mit deterministischer Mathematik jedenfalls habe Software-Entwicklung nur wenig zu tun, findet er.

    "Das ist schon eher schöpferische Kunst. Da ist schon viel Ästhetik gefragt oder Erfahrung gefragt oder Gefühl gefragt. Also das ist nicht so in Stein gemeißelt, wie man jetzt vielleicht denkt."

    Das Selbstverständnis des jungen Software-Entwicklers kontrastiert stark mit den jüngsten soziologischen Untersuchungen zur Arbeitssituation von Programmierern.

    "Aus – salopp gesagt – Stars der New Economy werden auf einmal normale Arbeitnehmer",

    sagt Dr. Tobias Kämpf vom Institut für sozialwissenschaftliche Forschung in München. Tools und Sprachen werden den Programmierern mittlerweile vorgeschrieben. Commoditizing und Standardisierung prägen die Software-Entwicklung.

    "Dadurch sinken natürlich auch die Machtpotenziale der IT-Beschäftigten mitunter ganz erheblich."

    Seit dem Platzen der Dot-Com-Blase im Jahr 2000 halte diese Entwicklung ununterbrochen an.

    "Deshalb sprechen wir von der Zeitenwende in der IT."

    Und seit dieser Zeitenwende wird die Branche älter. Programmierer in den Zwanzigern wie Vincenz Dölle sind nicht mehr die Regel, sondern die Ausnahme.

    "Die Branche ist schließlich Mitte der 90er-Jahre bis zur New Economy sehr dynamisch, sehr stark gewachsen. Aber diese Kohorte von Beschäftigten, die in diesem Zeitraum eingestellt wurde, die wird jetzt älter."

    Zwar stellt die Software-Industrie nach wie vor jede Menge Leute ein, den ganz überwiegenden Teil davon allerdings in Ländern wie Indien.

    "Rein theoretisch mit der ganzen Welt steht man in Konkurrenz, auch mit Leuten in Indien, die auch ganz hervorragend programmieren können."

    Wobei allerdings Vincenz Dölle sich über die Konkurrenz im Weltmarkt-Maßstab keine Sorgen macht. Er schreibt Individual-Software, meist für mittelständische Auftraggeber und ist sich sicher, dass es für ihn und seine Firma auch künftig genug zu programmieren gibt. Für die meisten Software-Entwickler jedoch sind die Zeiten härter geworden. Viele Programmierer, die Dr. Kämpf für seine Untersuchung befragt hat, beschreiben ihre Situation mit einer sehr unschönen Metapher.

    "Das ist dann das Bild von dem Hamster. Man rennt und rennt und kommt doch nicht voran."

    "Ja, der Hamster im Rad. Das ist tatsächlich so",

    sagt Martin Schöttler. Er hat ein Buch über seine Arbeit als freiberuflicher Programmierer geschrieben. Der Titel: "Hamster im Rad". Als er 50 war, verlor er seine Festanstellung. Heute, mit 58, arbeitet er Teilzeit und als Selbständiger in seinem Haus in Kochel am See, direkt am Fuß der Alpen. Aber wenn er programmiert, dann spielt der Ort keine Rolle, dann ist er eh in einer ganz anderen Welt.

    "Dann fange ich Morgens damit an um fünf Uhr und höre Abends damit um sieben Uhr auf."

    Im Ernst?

    "Ja, nicht jeden Tag, nicht jeden Tag. Es gibt ja Tage, da bin ich in München, wo ich noch bei einer anderen Firma arbeite, wo ich als Angestellter arbeite."

    Nach 14 Stunden vorm Rechner, vor der IDE, der integrierten Entwicklungsumgebung, findet Martin Schöttler manchmal nur schwer zurück in die wirkliche Welt. Und so ein langer Arbeitstag reicht auch oft nicht aus, um auf die Lösung zu kommen, die er gesucht hat.

    "Ja, das kann immer mal passieren. Und manchmal ist es meiner Frau auch nicht so recht, wenn ich beim Abendbrot durch sie durchschaue, weil mir gerade eine Eingebung gekommen ist. Das ist manchmal sehr unschön."

    Eine Alterserscheinung ist das nicht. Dem über 30 Jahre jüngeren Vincenz Dölle geht’s ähnlich.

    "Da kann man dann eben in der U-Bahn sitzen. Und dann steigt man aus und geht durch die Stadt und denkt die ganze Zeit in Wirklichkeit nur: Wie kriege ich dieses Problem gelöst? Das kann doch nicht so schwer sein. Man kann sich dann so ziemlich tief in so eine Scheinwelt, diese gedankliche Welt sozusagen, vergraben. Das ist wahrscheinlich in allen kreativen Berufen so, also diesen Schaffensberufen. Auch einem Komponisten wird’s ähnlich gehen. Auch der wird sich in seine Musik reingraben, bis er dann die perfekte Harmonie letztendlich hat."

    Martin Schöttler träumt auch von Source-Code. Ebenfalls etwas, was er als nicht so schön empfindet.

    "Beim Träumen kommen eigentlich selten gute Ideen. Also wenn ich versuche, die Ideen, die ich da habe, umzusetzen, dann funktioniert das gewöhnlich nicht."

    Beide Programmier sind Sammler, ständig auf der Suche nach gutem Code - im Netz, wo sie Open-Source-Code lesen oder auf der Festplatte ihres Rechners, wo sie selbstgeschriebene Software abgespeichert haben oder im eigenen Kopf, wo diese Software ihre Spuren hinterlassen hat.

    "Ich persönlich merke mir das sehr gut, wo ich so was als Muster oder als Struktur schon habe. Und deshalb, solange ich es kann und solange ich sehe, dass es wieder sinnvoll ist, greife ich auf bewährte Strukturen zurück oder ein Stück Code oder Entwicklungsmuster oder so. Das ist ja meine Vorgehensweise, die ja eigentlich ganz gut funktioniert."

    Aus altbewährten Strukturen, Mustern und Code-Schnipseln entstehen so ständig neue Programme.

    "Ja, eigentlich man versucht immer, Dinge herzunehmen, die es schon gibt und die gut anzupassen und gut zusammenzufügen wie ein Installateur, der also eine Heizung zusammenbaut und dazu Ventile und Rohre nimmt, die es schon gibt, aber daraus eine gute Heizung baut."

    Und während einen Laien an einer Heizung nur interessiert, ob sie wärmt oder nicht, kann sich ein Klempnerei-Fachmann auch über ihre Schönheit begeistern und ein Programmierer eben über jene eines Stücks Code. Martin Schöttler zeigt auf ein paar eingerückte Zeilen auf dem Bildschirm seines Rechners.

    "Also als ästhetisch würde ich vielleicht diese kleine Routine hier ansehen, die aus vier Zeilen besteht. Aber so eine lange Routine, die aus 20 Zeilen besteht, das ist für mich überhaupt nicht ästhetisch."

    Diese Vierzeilen-Routine: Was erfreut daran, das Herz eines Programmierers?

    "Dass ich auf einen Blick sehe, was darin passiert. Hier hingegen bei diesen 20 Zeilen, da wird viel zu viel gemacht. Und vielleicht das eine oder andere wird in einer anderen Routine auch noch gemacht. Dann zieht man das besser raus, macht es in kleineren Routinen und schaut, dass man ja keine Redundanzen drin hat."

    Also die Ästhetik eines Quellcodes, das ist im Prinzip die Übersichtlichkeit und Verständlichkeit und Einsichtigkeit?

    "Ja. Und natürlich auch, dass hier überall Namen sind, die selbsterklärend sind. Also ich hab hier kaum Kommentar-Zeilen. Der Code soll sich selber kommentieren. Sonst passiert nämlich typischer Weise eines: Man entwickelt das Programm weiter. Und auf den Kommentar achtet man nicht. Und der Kommentar wird ja nie getestet. Er wird erst dann getestet, wenn jemand versucht, da mal durchzublicken. Und das passiert dann vielleicht irgendwann, wenn man das jemandem übergeben hat. Ja, dann ist keiner mehr da, der das wieder in Ordnung bringen kann."

    Die Untersuchung des Instituts für sozialwissenschaftliche Forschung, von Dr. Tobias Kämpf, sie hat ergeben, dass Programmierer zunehmend Angst um ihre Arbeitsplätze haben. Martin Schöttler hat diese Angst nicht mehr. Seinen Arbeitsplatz hat er längst verloren, ist aber heute als freier Software-Entwickler gut im Geschäft. Trotzdem treibt ihn eine Sorge um, die Sorge, einmal etwas nicht zu schaffen.

    "Eigentlich entwickeln wir ja immer etwas Neues. Das heißt, eigentlich kann ich nie vorher abschätzen, wie lange es dauert und ob ich’s hinbekomme. Eigentlich kann ich’s nie mit Sicherheit sagen."

    Und diese Sorge, sie bleibt ein Leben lang.

    "Man springt immer ins tiefe Wasser. Und irgendwann kommt der Punkt, wo man Angst hat zu ertrinken. Aber es passiert nie."