Vibe-Coding: Eine neue Ära der Softwareentwicklung?!
Vibe-Coding ist ein innovativer Ansatz in der Softwareentwicklung, bei dem Entwickler nicht mehr direkt Code schreiben, sondern mithilfe von KI-gestützten Entwicklungswerkzeugen ihre Ideen in natürlicher Sprache formulieren. Die KI generiert daraufhin den passenden Code, wodurch die Programmierung zugänglicher und effizienter wird2.
Funktionsweise
Beim Vibe-Coding geben Entwickler sprachliche Anweisungen wie „Erstelle eine Navigationsleiste mit Dropdown-Menü“ oder „Optimiere die Ladegeschwindigkeit der Seite“. Die KI analysiert diese Eingaben und generiert den entsprechenden Code. Falls Anpassungen nötig sind, kann der Entwickler weitere Anweisungen geben, wodurch ein iterativer Prozess entsteht.
Rahmenbedingungen
- KI-Modelle: Vibe-Coding basiert auf leistungsstarken Large Language Models (LLMs), die Code generieren und optimieren können.
- Werkzeuge: Plattformen wie Cursor Composer oder Replit Agent nutzen KI-Modelle von OpenAI oder Anthropic.
- Einsatzbereiche: Besonders nützlich für schnelle Prototypen, Webentwicklung und Automatisierung.
Vor- und Nachteile von Vibe-Coding
Vorteile | Nachteile |
---|---|
Zugänglichkeit – Auch Personen ohne tiefgehende Programmierkenntnisse können Software entwickeln. | Qualitätssicherung – Generierter Code kann Fehler enthalten oder ineffizient sein. |
Geschwindigkeit – Projekte lassen sich deutlich schneller umsetzen. | Sicherheitsrisiken – Ungeprüfter Code kann Schwachstellen enthalten. |
Kreativität – Entwickler können sich stärker auf Ideen und Konzepte konzentrieren. | Abhängigkeit von KI – Weniger Kontrolle über den Code kann langfristig problematisch sein. |
Automatisierung – Wiederkehrende Aufgaben können effizient erledigt werden. | Debugging – Fehlerbehebung kann schwieriger sein, wenn der Code nicht vollständig verstanden wird. |
Dokumentation – Die Dokumentation kann die KI schneller und oft auch besser als der Mensch schreiben. | Dokumentation – Mit der Auslagerung auf die KI nimmt man sich die Möglichkeit, über den Code und seinen Sinnhaftigkeit zu reflektieren. |
Spionage – Für das Vibe-Coding muss die KI angesprochen werden. Wenn sie nicht im eigenen Unternehmen liegt, ist so die Gefahr der Industrie-Spionage gegeben. Auch kann es Probleme bei Patenten geben, weil dem Patent die notwendige Erfindungshöhe abgesprochen werden könnte. | |
Testing – Durch natürlich sprachliche Anweisungen kann man die Essenz von Tests formulieren und überlässt das Handwerkliche der KI. Insbesondere schreibt die KI schnell und gut Unit-Tests. |
Vibe-Coding revolutioniert gerade die Softwareentwicklung, indem es die Barrieren für Programmierung senkt und kreative Prozesse erleichtert. Gleichzeitig erfordert es jedoch kritisches Denken, um die Qualität und Sicherheit des generierten Codes zu gewährleisten.
Nachsatz
Der obige Text wurde von einer KI erstellt. Die kursiv gedruckten Teile vwurden von mir nachträglich eingefügt. Auch wurden weite Teile der TYPO3-Extension webhelp mit einer KI - also mit Hilfe von vibe-Coding - erstellt. Meine Erfahrung ist, dass man das Programmierprojekt klein halten muss. die gewählten Web Components hatten gerade noch die richtige Größe, um die genutzten KI-Services nicht zu überfordern. Das Vibe-Coding zwingt den Entwickler dazu, sich ähnlich wie bei Test-Driven-Coding frühzeitig über Test-Szenarien Gedanken zu machen. Bei Web Components ist dies einfach, weil man die KI anweisen kann, bestimmte Varianten für die Web Components selbst zu entwickeln. Angenehm ist die Tagsache, dass man die KI auch zur Erstellung der Dokumentation verwenden kann.
Web Components aus der TYPO3-Extension `webhelp`
porthd-tocgenerator: Inhaltsverzeichnis als Web Component einbauen
Fehlermeldung statt Verzeichnis
Verzeichnis korrekt funktionierend
porthd-breadcrumb: Breadcrumb-Menu aus sprechenden Link erzeugen
Für aktuelle Seite
Fehler beim Breadcrumb-Menü erzeugen
porthd-ajax: Zeige per Ajax geladene `Sitemap.xml` unter Callback-Nutzung mit Button
fehlerhafter Ajax-Import ohne Button
Ajax-Import mit Button (Nachlader für Google-Maps oder Social-Media
Ohne Button
Mit Button und mit Starttext und maximal 3 Klickevent
Der Ajax-Request wird aus Gründen des Datenschutzes erst ausgeführt, wenn sie auf den Button klicken.
porthd-barchart-from-table : Beispiel Tabelle zur Chart - `transponiertes` Auslesen
Person | Alice | Bob | Clara |
---|---|---|---|
Wert A | 10 | 20 | 30 |
Wert B | 5 | 15 | 25 |
porthd-codeview: PHP-Code inkludiert in ein <script>-Tag
porthd-infomodal: Modalfenster mit Slots im Template
Beispiel: Modal mit außerhalb vom Web Component definierten Template
Beispiel: Modal mit vom Web Component inkludierten Template
porthd-listselect: ein-/ausklappbar und durchsuchbar Mega-Menü umschlossen vom Web Component
- Domäne: Archaeen
- Reich: Tiere
- Stamm: Chordatiere
- Klasse: Säugetiere
- Ordnung: Carnivora (Raubtiere)
- Familie: Felidae (Katzenartige)
- Gattung: Panthera
- Art: Panthera leo (Löwe)
- Art: Panthera tigris (Tiger)
- Gattung: Panthera
- Familie: Felidae (Katzenartige)
- Ordnung: Proboscidea
- Familie: Elephantidae
- Gattung: Loxodonta
- Art: Loxodonta africana (Afrikanischer Elefant)
- Art: Loxodonta cyclotis (Waldelefant)
- Gattung: Elephas
- Art: Elephas maximus (Asiatischer Elefant)
- Gattung: Mammuthus (ausgestorben)
- Art: Mammuthus primigenius (Wollhaarmammut)
- Art: Mammuthus columbi (Kolumbianisches Mammut)
- Art: Mammuthus meridionalis (Südelefant)
- Gattung: Loxodonta
- Familie: Elephantidae
- Ordnung: Cetacea
- Familie: Delphinidae (Delfine)
- Gattung: Delphinus
- Art: Delphinus delphis (Gemeiner Delfin)
- Art: Delphinus capensis (Langschnauzendelfin)
- Gattung: Tursiops
- Art: Tursiops truncatus (Großer Tümmler)
- Art: Tursiops aduncus (Indopazifischer Großer Tümmler)
- Gattung: Stenella
- Art: Stenella attenuata (Gefleckter Delfin)
- Art: Stenella longirostris (Spinner-Delfin)
- Art: Stenella coeruleoalba (Streifendelfin)
- Gattung: Orcinus
- Art: Orcinus orca (Schwertwal / Orca)
- Gattung: Lagenodelphis
- Art: Lagenodelphis hosei (Schlankdelfin)
- Gattung: Delphinus
- Familie: Phocoenidae (Schweinswale)
- Gattung: Phocoena
- Art: Phocoena phocoena (Gewöhnlicher Schweinswal)
- Art: Phocoena sinus (Vaquita / Kalifornischer Schweinswal)
- Art: Phocoena dioptrica (Brillenschweinswal)
- Gattung: Neophocaena
- Art: Neophocaena phocaenoides (Finless-Schweinswal)
- Gattung: Australophocaena
- Art: Australophocaena dioptrica (Südlicher Schweinswal)
- Gattung: Phocoena
- Familie: Delphinidae (Delfine)
- Ordnung: Carnivora (Raubtiere)
- Klasse: Vögel
- Art: Adler (*Aquila chrysaetos*)
- Art: Pinguin (*Aptenodytes forsteri*)
- Art: Papagei (*Ara ararauna*)
- Klasse: Reptilien
- Art: Krokodil (*Crocodylus niloticus*)
- Art: Leguan (*Iguana iguana*)
- Art: Schlange (*Naja naja*)
- Klasse: Säugetiere
- Stamm: Gliederfüßer
- Klasse: Insekten
- Art: Ameise (*Formica rufa*)
- Art: Schmetterling (*Papilio machaon*)
- Ordnung: Coleoptera (Käfer)
- Familie: Coccinellidae (Marienkäfer)
- Gattung: Coccinella
- Art: Coccinella septempunctata (Siebenpunkt-Marienkäfer)
- Gattung: Coccinella
- Familie: Coccinellidae (Marienkäfer)
- Klasse: Spinnentiere
- Art: Tarantel (*Theraphosa blondi*)
- Art: Skorpion (*Androctonus australis*)
- Art: Zecke (*Ixodes ricinus*)
- Klasse: Krebstiere
- Art: Hummer (*Homarus gammarus*)
- Art: Krabbe (*Carcinus maenas*)
- Art: Garnelen (*Palaemon serratus*)
- Klasse: Insekten
- Stamm: Chordatiere
- Reich: Pflanzen
Stamm: Bedecktsamer
- Klasse: Einkeimblättrige
- Art: Reis (*Oryza sativa*)
- Art: Banane (*Musa acuminata*)
- Art: Tulpe (*Tulipa gesneriana*)
- Klasse: Zweikeimblättrige
- Art: Rose (*Rosa canina*)
- Art: Eiche (*Quercus robur*)
- Art: Sonnenblume (*Helianthus annuus*)
- Klasse: Magnoliopsida
- Art: Magnolie (*Magnolia grandiflora*)
- Art: Ahorn (*Acer pseudoplatanus*)
- Art: Klee (*Trifolium pratense*)
Stamm: Farne- Klasse: Echter Farn
- Art: Adlerfarn (*Pteridium aquilinum*)
- Art: Königsfarn (*Osmunda regalis*)
- Art: Streifenfarn (*Asplenium trichomanes*)
- Klasse: Moosfarne
- Art: Selaginelle (*Selaginella lepidophylla*)
- Art: Quellmoos (*Fontinalis antipyretica*)
- Art: Hornmoos (*Anthoceros agrestis*)
- Klasse: Einkeimblättrige
- Reich: Pilze
- Stamm: Ständerpilze
- Klasse: Hutpilze
- Art: Champignon (*Agaricus bisporus*)
- Art: Fliegenpilz (*Amanita muscaria*)
- Art: Steinpilz (*Boletus edulis*)
- Klasse: Rostpilze
- Art: Weizenrost (*Puccinia graminis*)
- Art: Birnengitterrost (*Gymnosporangium sabinae*)
- Art: Kiefernblasenrost (*Cronartium ribicola*)
- Klasse: Hutpilze
- Stamm: Schlauchpilze
- Klasse: Hefe
- Art: Bäckerhefe (*Saccharomyces cerevisiae*)
- Art: Bierhefe (*Saccharomyces pastorianus*)
- Art: Candida (*Candida albicans*)
- Klasse: Trüffelpilze
- Art: Schwarzer Trüffel (*Tuber melanosporum*)
- Art: Weißer Trüffel (*Tuber magnatum*)
- Art: Wüstentrüffel (*Terfezia claveryi*)
- Klasse: Hefe
- Stamm: Ständerpilze
- Reich: Tiere