Vibe Coding
Über die Macht und die Gefahr des Programmierens mit KI
- Veröffentlicht
- Aktualisiert
- (erstellt )
- Geschrieben von
- Willem L. Middelkoop
- Themen
- AI · Spiel · Programmierung · Arbeit
- Menschliche Version dieses Beitrags
- https://willem.com/de/2025-04-15_vibe-coding/
- English
- Vibe Coding
- Nederlands
- Vibe Coding
- Español
- Codificación Vibe
- Français
- Vibe coding
- Italiano
- Vibe Coding
- Português
- Vibe Coding
- Papiamentu
- Vibe Coding
- Frysk
- Vibe Coding
- Sprachen
- Aus dem englischen Original von einem Sprachmodell in zwei Durchgängen (Übersetzung und Korrektur) mit Glossar und Rechtschreibprüfung übersetzt; noch nicht von einem Muttersprachler gelesen.
Zusammenfassung
Der Flugsimulator von Pieter Levels setzt über 48.000 $ im Monat um und hat eine ganze Welle von Innovationen ausgelöst. Ohne tiefes Wissen über 3D-Game-Engines hat er sein Spiel mit KI per "Vibe Coding" gebaut. Kritiker verwiesen auf Probleme bei Sicherheit und Skalierbarkeit, Befürworter lobten das erstaunliche Ergebnis. Was können wir daraus lernen?
Volltext
Vibe Coding
Vibe Coding ist eine KI-gestützte Programmiermethode: Du beschreibst ein Problem in wenigen Sätzen als Prompt für ein Sprachmodell, das auf Programmierung getrimmt ist. Das Modell erzeugt die Software, und die Rolle des Programmierers verschiebt sich zum Anleiten, Testen und Verfeinern des Ergebnisses. Befürworter behaupten, dass so auch Anfänger Programme schreiben können, ohne lange Ausbildung oder Kenntnisse im Software Engineering.
Pieter Levels hat das Spiel fly.pieter.com gebaut. In den sozialen Medien hat er seine Arbeit offen begleitet: von der ersten Idee bis zur Veröffentlichung. Er gewann Sponsoren für Werbung im Spiel und verkauft Premium-Upgrades (zum Beispiel spezielle Flugzeuge). Damit nimmt er jeden Monat Tausende von Dollar ein.

Seine Erfolgsgeschichte wirft Fragen zur Zukunft der Spieleentwicklung auf, ja der Programmierung überhaupt. Wenn ein einzelner Typ mit einem Laptop einen Hit wie diesen landen kann, wozu braucht es dann noch Studios mit großem Budget? Oder andersherum gefragt: Was würde aus großen Studios, wenn sie bei der Produktion ähnlich auf "Vibe Coding" setzten?
Selbst ausprobiert
Ich habe selbst Erfahrung mit der Entwicklung eines Spiels (Snake 97, über 40 Millionen Downloads). Pieters Geschichte hat mich deshalb neugierig gemacht auf die 3D-Technologie, die er für sein Spiel nutzt: ThreeJS. Ein Spiel zu bauen ist schwer, in 3D noch schwerer. Die Mathematik hinter einer Welt in drei Dimensionen ist eine ganz neue Herausforderung. In vielem ist sie anders als bei normalen Programmen oder einfachen zweidimensionalen Spielen. Ich hatte schon ein bisschen experimentiert, fand die Lernkurve der 3D-Mathematik aber ziemlich steil. Hier kann die KI helfen.

Für die Gran Fondo App habe ich mit KI eine dreidimensionale Darstellung einer aufgezeichneten Laufeinheit erzeugen lassen. Ich habe mein Ziel in einfachem Englisch formuliert, und das KI-Modell hat den Code geschrieben, mit dem ThreeJS mein Training auf einer rotierenden Fläche anzeigt. Die ersten Ergebnisse waren nicht gut, aber ich verstand genug vom erzeugten Code, um gezielt um Verbesserungen zu bitten. Ein paar Stunden später hatte ich etwas, das mir gefiel. Vor allem aber hatte ich das Gefühl, viel über die Machbarkeit meiner ursprünglichen Idee gelernt zu haben. Die KI hat mir geholfen, schneller zu lernen.

Dann wollte ich eine andere Idee ausprobieren, die ich schon länger auf Eis gelegt hatte: ein Spiel über schlechte und gute Cholesterinpartikel im Blutkreislauf eines Menschen. Mit Elementen eines Endless Runner-Spiels schien es mir ein guter Kandidat für weitere Experimente, denn bei solchen Spielen werden die Level vom Computer erzeugt. Einen automatischen Level-Generator zu bauen, schien mir eine Aufgabe, bei der die KI helfen könnte.
Mit meinen neuen 3D-Fähigkeiten dachte ich, das Spiel solle sich in die Arterien hineinbewegen, statt wie bei klassischen 2D-Spielen seitlich zu laufen. Das bringt Herausforderungen mit sich, etwa visuelles Clipping und verzerrte Grafik, weil die Kamera außerhalb der 3D-Szene steht. Eine weitere Herausforderung ist die höhere Komplexität bei der Kollisionserkennung der Spielelemente, die für die Spielmechanik nötig ist. Der Code, den das KI-Modell erzeugte, wuchs mit jeder Iteration weiter an.

Nach rund 800 Zeilen Code stieß ich an die Grenzen des KI-Modells. Es machte Fehler und Bugs, die es in früheren Iterationen schon gelöst hatte. Jede neue Runde brachte neue Probleme, und das Modell vergaß immer wieder Verbesserungen und Korrekturen, die es zuvor eingebaut hatte. Das liegt an den Grenzen des Kontexts (Eingabe-Token), mit dem große Sprachmodelle arbeiten können. Einfach gesagt: Es kann sich nicht genug merken, um am ganzen Projekt auf einmal weiterzuarbeiten.

Nach einigen Tagen intensiven Experimentierens habe ich die Entwicklung der Game Engine mit KI beendet. Ich steckte inzwischen mehr Mühe in die Steuerung des KI-Modells als in die eigentliche Game Engine. Ich sah ein, dass es besser wäre, mir ein paar Bücher über die Technologien zu besorgen, sie zu lesen, selbst besser zu werden und die Game Engine dann von Hand zu bauen. Wenn es komplex wird, scheint unser menschliches Gehirn sich auf einzelne Teile einer komplexen Aufgabe konzentrieren zu können, ohne das große Ganze aus dem Blick zu verlieren.
Über die Torheit der "Programmierung in natürlicher Sprache"
Neben den Grenzen des Kontexts, den ein KI-Modell überblicken kann, gibt es meiner Meinung nach noch das Problem der Mehrdeutigkeit. Ich empfehle dir, die Worte von Edsger Wybe Dijkstra zu lesen. In seinem EWD667 denkt er über die Torheit der "Programmierung in natürlicher Sprache" nach. Eine eindeutige Beschreibung, frei von wirren Gedanken, ist das Fundament für zuverlässigen Code. Unsere Muttersprache aber lässt zu viel Raum für allerlei Unsinn und Fehler. Wir sollten stattdessen unsere Worte beherrschen, scharf denken und mutig spezifizieren.
Eine formale Sprache, etwa eine Programmiersprache, ein mathematisches Modell oder eine erschöpfende Spezifikation von Ein- und Ausgabe, kann ein erstaunlich wirksames Mittel sein, um Mehrdeutigkeit und Fehler auszuschließen. Einfach gesagt: Du bekommst die beste Ausgabe, wenn du die beste Eingabe lieferst.
Die KI mit Code füttern
Um zu testen, ob die KI mir besseren Code liefert, habe ich die Sprache meiner Anfrage geändert. Statt in natürlicher Sprache zu beschreiben, was ich wollte, habe ich ein Stück Code hochgeladen, das ich früher geschrieben hatte und das ganz bestimmte Eigenschaften hatte:
- der Code stammte aus einem Produktivsystem, ich wusste, dass er gut funktioniert
- der Code enthielt verschiedene Anweisungen zur Fehlerbehandlung und war dadurch robust
- der Code hatte keine Syntaxfehler und nutzte logisch benannte Variablen und Funktionen
- der Code hatte einen klar umrissenen Zweck, mit eindeutig definierten Schnittstellen nach außen
Zusätzlich zum Code habe ich die KI gebeten, einen bestimmten Aspekt zu ändern. Sie sollte die Nutzung eines bestimmten externen Programms (des NodeJS-Moduls 'lwip') entfernen und durch ein anderes ersetzen (ImageMagick). Sowohl lwip als auch ImageMagick sind Open-Source-Code, deshalb kennt das KI-Modell beide gut. Ich habe ihm das perfekte Rezept für seine Küche gegeben.
Der Code, den ich von der KI bekam, war ein zu 99 % perfekter Drop-in-Ersatz für meinen eigenen. Er hatte einen Fehler: Einige Parameter wurden nicht korrekt escaped, was zu einem Absturz führte. Den Fehler konnte ich selbst finden und von Hand beheben, weil ich mich im Kontext dieser Software bestens auskannte. Nach weiteren Tests habe ich den KI-Code in Produktion genommen, denn die neue Bibliothek war deutlich schneller als die alte.
Fazit
Vibe Coding mit KI ermöglicht schnelles Prototyping und Lernen, wie der Erfolg von Pieter Levels zeigt, scheitert aber bei komplexen Projekten, die Präzision verlangen. Das wirft eine Frage auf: Erweitert KI unser Potenzial oder beschränkt sie uns auf ihre eigenen Grenzen? Meisterschaft verbindet menschliches Denken mit der Kraft der KI. Denk über Handwerkskunst nach: Wann schärfen Werkzeuge dein Können, und wann stumpfen sie es ab?