Meinung

KI schreibt durchschnittlichen Code – zum Glück

"Die KI plappert ja nur nach, was der Durchschnitt im Internet sagt", höre ich immer wieder. Das klingt, als wäre es schlecht, ist es aber nicht.

Vorweg: Mir geht es ums Lösen von Problemen, nicht ums Schreiben von Romanen. Für die kleine Prise echter Kreativität, die überall drinsteckt, sind immer noch wir Menschen zuständig. Wie ich unten argumentieren werde, ist das aber nur ein kleiner Teil des Problemlösens.

Also, das Argument geht so: LLMs sagen ja immer nur das nächste Wort vorher. Und da sie mit dem Wissen des gesamten Internets trainiert worden sind, suchen sie dann die am meisten gegebene Antwort raus, etwas Mittelmäßiges eben. Und wer will schon mittelmäßig sein?

Das stimmt soweit auch, so funktionieren sie. Aber der Kontext entscheidet. Machen wir mal einen einfachen Test (14. Mai 2026 mit Claude Opus 4.7 Adaptive), beide Male in einem frischen Inkognito-Kontext.

Test 1

Ich bin 5 Jahre alt. Was ist Licht?

Licht ist das, was alles hell macht, damit du sehen kannst!

Die Sonne macht Licht. Eine Lampe macht Licht. Eine Kerze auch.

Wenn kein Licht da ist, ist es dunkel — dann kannst du nichts sehen. Deshalb machst du abends das Licht an.

Licht ist auch ein bisschen wie ein ganz schneller Renner: Es flitzt von der Sonne bis zu dir, schneller als alles andere auf der Welt. Und das Coole: Im Licht sind alle Farben versteckt! Beim Regenbogen kannst du sie sehen. 🌈

Möchtest du wissen, woher der Regenbogen kommt?

Test 2

Ich bin 30 Jahre alt. Was ist Licht?

Licht ist elektromagnetische Strahlung – schwingende elektrische und magnetische Felder, die sich mit ~300.000 km/s ausbreiten. Das, was wir sehen, ist nur der kleine Bereich mit Wellenlängen zwischen ~380 und 750 nm; daneben gibt's Infrarot, UV, Radiowellen, Röntgen usw.

Licht hat eine Doppelnatur: mal verhält es sich wie eine Welle (Beugung, Interferenz), mal wie ein Strom von Teilchen – den Photonen. Jedes Photon trägt eine Energiemenge, die von der Frequenz abhängt.

Wenn du in eine bestimmte Richtung tiefer einsteigen willst (Quantenoptik, Farbwahrnehmung, Relativitätstheorie), sag Bescheid.

Der Kontext entscheidet

Offensichtlich entscheidet also der Kontext, was als Antwort herauskommt. Das ändert den Blick auf "durchschnittlich": Es wird nicht mehr unspezifisch eine durchschnittliche Antwort gegeben, sondern eine, die zu dem gegebenen Kontext passt. Und der ist normalerweise schon mit einigem angefüllt: vorherigen Fragen und Antworten, dem Memory vergangener Chats, deinem Source Code, was auch immer.

Aber selbst wenn die Kritiker recht behielten und es Durchschnitt wäre, beim Lösen von Problemen ist Durchschnitt genau das, was man sucht. Ich möchte zeigen, warum die durchschnittliche Antwort sogar die beste sein könnte.

Beim Problemlösen heißt "durchschnittlich" nicht "mittelmäßig", sondern: eine Lösung, die schon oft genug funktioniert hat, weil sich schon viele Menschen vor dir über das Thema Gedanken gemacht haben und die Maschine das Destilat ihrer Versuche und Antworten kennt.

Meiner Beobachtung nach lösen wir fast nie Probleme, die wirklich neu sind (zu den Ausnahmen gleich mehr). Fast alles, was wir machen, ist, Versatzstücke neu zusammenzusetzen; Versatzstücke, die wir früher mal gesehen oder gelernt haben. Und dabei ist nicht mal Kreativität gefragt, es ist einfach Schema F. So macht man das halt.

Aber selbst wenn wir mal etwas wirklich Neues machen, dann benutzen wir dazu auch wiederum kleinere Blöcke, die andere vor uns schon benutzt haben. Und genau das ist es, was in Studium und Ausbildung gelehrt wird, in Normen und Standards festgeschrieben ist oder als "Stand der Technik" beschrieben wird.

Ein Beispiel aus meiner Praxis

Wenn ich eine Client-Server-Anwendung schreibe, dann tue ich wahrscheinlich gut daran, ein etabliertes Pattern zu benutzen, z.B. eine REST-API. Das haben schon viele Andere vor mir gemacht, alle Probleme sind von ihnen schon 1000-mal gelöst worden. Das erlaubt mir schnelle Entwicklung, schnelles Debugging, gibt mir viele Tools und, nicht zuletzt, erlaubt meinen Usern und Co-Programmierern, das System schnell zu verstehen.

Ich kann mich auch entscheiden, dieses Problem kreativ neu zu lösen, ein ganz anderes Protokoll wählen, total "kluge" Features einbauen, aber in meiner Erfahrung zahlt sich das in den wenigsten Fällen aus. Es gibt einfach zu viele Details, an die man nicht gedacht hat, die einem später aber auf die Füße fallen. Und genau aus solchen Gründen haben sich typischerweise irgendwann mal ein paar schlaue Menschen hingesetzt und einen Standard geschrieben.

Man sollte auch nicht unterschätzen, wie hilfreich es ist, sich der typischen Patterns zu bedienen. Zu oft schon habe ich meinen eigenen Source Code ein Jahr später gelesen und kein Wort mehr verstanden. Ich war zu "klug" und der Meinung, ich wüsste es besser. Es hilft einfach, wenn man es so macht, wie "man das macht".

Ausnahmen bestätigen die Regel

Natürlich gibt es hin und wieder auch gute Gründe, sein eigenes Ding zu machen und ein neues Design zu wählen. Aber ich behaupte, das tritt seltener auf als man gemeinhin glaubt. Wenn man echten Cutting-Edge-Code programmiert, neue Algorithmen für die Forschung schreibt oder selten anzutreffende Probleme löst, dann mag das stimmen.

Aber in meiner täglichen Praxis sind 99 % des Codes, den ich schreibe, eigentlich Fingerübungen, vergleichsweise langweilige Lösungen von altbekannten Problemen, neu zusammengesetzt. Im Allgemeinen lohnt es sich eben nicht, einen Sortieralgorithmus neu zu schreiben, weil man glaubt, man könnte es besser als die Autoren der Bibliotheksfunktion. Und da freue ich mich über die KI, die mein Problem gerne ganz durchschnittlich löst.

← Alle Posts