Guter Code ist wie gute Literatur

Die Grundlage vieler Innovationen ist Software. Software frisst die Welt („Software is eating the world“) sagte Marc Andreessen schon im August 2011. Software ist auch die Grundlage von allem maschinellem Lernen. Und woraus besteht Software? Aus Code. Da denke ich, es ist wichtig zu verstehen, was guter Code ist.

Ein guter Kollege empfahl mir zu diesem Thema das Buch „A Philosophy of Software Design“ von John Ousterhout. Der Name des Autors kam mir bekannt vor. Aber ich wusste nicht gleich, warum. Erst in einem späteren Kapitel, in dem John über die Tcl-Skriptsprache schrieb, wurde es mir klar. Ich hatte in den 1990er Jahren viel das Buch „Tcl and the Tk Toolkit“ desselben Autors benutzt. Ich entwickelte damals Linux-Gerätetreiber (ladbare Module für den Slackware Linux 0.99 Kernel) für ein Messsystem in meinem Physikstudium, und ich benutzte Tcl/Tk für die Anwendungs-Oberfläche.

„A Philosophy of Software Design“ ist cool. Es hat mich sehr stark an ein anderes Buch erinnert, das ich diesen Sommer gelesen hatte: „On Writing Well“ von William Zinsser. In dem Buch wird erklärt, wie man Texte aller Art schreibt. Sei klar und nutze kurze Sätze. Schreibe für dich, so wie du es gern lesen möchtest. Guter Code ist wie gute Literatur – er ist zeitlos. Die Software-Design-Tipps sind wie Tipps zum Schreiben von Literatur jeglicher Art – halte es einfach und vermeide Komplexität. Definiere gute Interfaces mit der richtigen Abstraktionsebene. Denke an andere Entwickler, die nach dir mit dem Code arbeiten werden.

Über Jahrzehnte hinweg haben sich diese Regeln nicht geändert. Und auch die scheinbar so agilen und schnellen Innovationen halten sich am Ende an diese Regeln, weil sie auf Code basieren. Und zwar idealerweise auf gutem Code.

1984, Alfred Nobel und künstliche Intelligenz

Ich hatte geschrieben, dass ich einen positiven Beitrag für diese Welt leisten will und dass ich mich um die Verbreitung von maschinellem Lernen und künstlicher Intelligenz kümmern werde. Passt das überhaupt zusammen? Wie sieht der positive Beitrag von künstlicher Intelligenz heute aus?

Amazon Alexa, Google Home, Apple Siri, selbst fahrende Autos, intelligente Webseiten sind die Vorboten einer Welle von künstlicher Intelligenz, die gerade erst im Entstehen ist. In den Medien werden diese Vorboten oft kritisiert. Ist der freizügige Umgang mit unseren Daten vertretbar? Ohne unsere Daten, ohne viele Daten, funktionieren maschinelles Lernen und künstliche Intelligenz nicht. Sind wir bereit, diesen Preis zu zahlen?

Wenn Du Dich mit künstlicher Intelligenz beschäftigen willst, dann empfehle ich Dir wärmstens, den Roman „1984“ von George Orwell zu lesen. Orwell hat ihn 1947/1948 geschrieben, er wurde 1949 veröffentlicht, und er ist aktueller denn je. „Big Brother is watching you!“ In diesem Roman begleiten wir Winston, der im Ministerium für Wahrheit arbeitet und Zeitungsartikel umschreibt, damit vorhersagen der Regierung als wahr im Archiv stehen, auch wenn sie nicht eintreffen. Und Winston wird wie alle Bürger tag und nacht über Telescreens in ihren Wohnungen und bei der Arbeit beobachtet. Die Telescreens erinnern mit an Geräte wie Amazon Alexa, die auch mithören – und bald auch beobachten, wie die Telescreens im Roman „1984“. Was viele Jahre als irrwitzige Science-Fiction erschien, ist heute Alltag.  Lies den Roman und mache Dir selbst ein Bild von der Welt, die wir mit künstlicher Intelligenz erschaffen könnten.

Neue Technologien sind erst einmal neutral. Wie ein Küchenmesser. Es kann zum Kochen benutzt werden, oder man kann damit Menschen verletzen. Das Gute und das Böse sind beides möglich. Alfred Nobel hat Dynamit erfunden, um etwas Gutes zu bewirken. Er wollte den Bergbau vereinfachen. Das hat er auch geschafft. Aber dann wurde Dynamit auch benutzt, um Kriege zu führen. Das hat Nobel so sehr zu schaffen gemacht, dass er sein Vermögen eingesetzt hat, um die Nobel-Preise zu ermöglichen.

Jede neue Technologie steckt in diesem Zwiespalt. Seit der Steinzeit. Der Speer sorgte für Essen, wenn damit ein Tier erlegt wurde. Und er wurde auch für Kämpfe zwischen Menschen benutzt. Dieselben Seiten gibt es bei der Dampfmaschine, der Elektrizität, Motoren, Flugzeugen, Kernspaltung, was auch immer.

Auch maschinelles Lernen und die künstliche Intelligenz sind in der Lage, das Leben der Menschen ungemein zu erleichtern, autonom fahrende Fahrzeuge werden die Straßen sicherer machen und wir werden keine Zeit mehr in Staus vergeuden, sondern sie nutzen. Die Schattenseiten könnten eine umfassende Überwachung und Transparenz meiner Daten sein. Wer weiß.

Ich freue mich auf die Arbeit mit neuen Technologien. Ich glaube, dass die Welt am Ende dadurch ein Stück besser wird. „Technology as a force for good“, forderte der VMware CEO Pat Gelsinger. Das stimmt. Wir müssen aber auch reflektieren und ethische Aspekte berücksichtigen. Die Ethik neuer Technologien, das ist ein ganz eigenes Feld, ein wichtiges Feld. Wir müssen aufpassen, dass wir bei allem Fortschritt das nicht vernachlässigen.

Das ist ein Kernthema für meine Arbeit bei VMware.

Urlaubslektüre

Sind Ratgeberbücher wirklich überflüssig? Die ganz guten Bücher stellen am Ende doch nur gesunden Menschenverstand vor. Was soll ich dabei lernen? Trotzdem liegen sie im Trend, auch bei meinen Kollegen im Silcon Valley.

Bei meinem letzten Besuch in Palo Alto, CA, war ich im Standford University Book Store, um mir ein paar Bücher zu kaufen. Dieser Buchladen war riesig, mit einem Café und vielen jungen Menschen. Ich fühlte mich wie in einer Bibliothek. In Zeiten von eReadern wirkte es wie ein Museum, wo alte Traditionen sichtbar werden. Ich mochte diesen Ort.

Urlaubslektüre
Urlaubslektüre

Jetzt bin ich im Urlaub im Schwarzwald und habe zwei der Bücher gelesen: On Writing Well von William Zinsser und Start With Why von Simon Sinek. Das dritte Buch How To Fix The Future von Andrew Keen folgt. Meine Frau fragt, worum es in diesen Büchern geht. Ich erzähle ihr, dass ich im Buch On Writing Well lerne, wie ich bessere Texte schreiben kann. Nutze aktive Verben, kurze Sätze – und besonders wichtig ist die Vorstellung, dass ich für mich selber und nicht für andere schreibe. (Ich muss die Einführung zu meinem Blog anpassen.) Meine Frau anwortet, dass dies doch alles selbstverständlich sei, es sei gesunder Menschenverstand. Warum verschwende ich meine Zeit damit? Ich solle viel lieber etwas lesen, wobei ich meine Seele baumeln lassen kann. Einen guten Roman oder einen Reisebericht.

Meine erste Reaktion ist Widerspruch. Dann überlege ich, ob meine Frau einen guten Punkt gefunden hat. Als ich Start With Why lese, wundere ich mich, wie trivial die Botschaft ist. Wenn Du andere Menschen bewegen willst, dann helfen logische Argumente wenig. Stattdessen sei ganz deutlich darin, WARUM Du etwas tust. Logisch. Eigentlich ist das doch auch nur gesunder Menschenverstand. Aber warum agieren so viele Firmen ganz anders? Warum wird oft versucht, mit technischen Argumenten zu gewinnen? Weil gesunder Menschenverstand („common sense“) eben doch nicht „common“ ist, nicht allgemein verbreitet. Und genau darum, sind diese Ratgeber-Bücher beliebt.

Auch ich mag ab und zu an meinen gesunden Menschenverstand erinnert werden. Selbst wenn es allgemeinem Handeln zu widersprechen scheint. Ich werde ein anderes Mal mehr darüber schreiben. Bis dahin wünsche ich dir viel Freude an deiner Lektüre, was auch immer es sein mag.