Einführung in Vibe und Spec-driven Coding für und mit IBM i
EDUCOD01
Dauer: 2 Tage
Einführung in Vibe und Spec-driven Coding für und mit IBM i
Der Begriff „Vibe Coding“ beschreibt einen völlig neuen Programmierstil, der durch den rasanten Fortschritt von KI-Coding-Assistenten (wie IBM Bob, GitHub Copilot, und andere) entstanden ist.
Kurz gesagt: Beim Vibe Coding schreibt der Mensch kaum noch selbst Code. Stattdessen übernimmt er die Rolle des „Regisseurs“ oder „Architekten“. Der Entwickler steuert die Softwareentwicklung rein über Prompts (Textanweisungen) auf einer sehr hohen Abstraktionsebene. Wenn der „Vibe“ (die Idee, die Richtung (Architektur), die Ästhetik) stimmt, kümmert sich die KI um das lästige Tippen von Syntaxen, Schleifen, APIs, etc..
Geprägt wurde der Begriff Anfang 2025 durch den Tech-Gründer Andrej Karpathy (ehemaliger KI-Chef bei Tesla und Mitgründer von OpenAI).
Wenn Vibe Coding das lockere Jammen in einer Band ist, dann ist Spec-Driven Coding das akribische Dirigieren nach Noten.
Beim Spec-Driven Coding (spezifikationsgetriebene Entwicklung) nutzt du die KI meist in zwei getrennten Phasen. Zuerst hilft dir die KI (oder du schreibst es selbst), eine unmissverständliche, hochdetaillierte technische Spezifikation zu erstellen. Der Workflow: Du definierst die Datenstruktur, alle API-Endpunkte, die erwarteten Inputs/Outputs und Randfälle (Edge Cases) in einer Textdatei (spec.md). Der KI-Agent liest diese Datei, schreibt den Code und erstellt oft gleichzeitig automatisierte Tests, um zu beweisen, dass der Code exakt der Spec entspricht.
Der Vorteil: Der Code ist extrem strukturiert, sauber dokumentiert und wartbar. Wenn du etwas ändern willst, änderst du nicht den Code, sondern du aktualisierst die Specs und lässt den Agenten den Code neu generieren.
Im Rahmen dieser Schulung werden wir beispielhafte Anwendungen für IBM i erstellen und setzen dafür die KIs IBM Bob und Github Copilot ein.
Diskussion
- Gegenüberstellung der Prinzipien von vibe und spec-driven Development
IBM Bob
- Erstellung eines Anwendungsprototypen
- Erstellung des Data-Layers (SQL)
- Erstellung eines Data Access Layers mit RPG
- Erstellung einer API
GitHub Copilot
- Erstellung eines Dialoganwendungs-Prototypen (Web Client)
- Ausarbeitung und Erstellung des Clients
Tooling
- VS-Code
- KI-Prompting
- Markdown Dokumente erstellen
- OPEN API Dokumente erstellen
- Sonstige Spezifikationen erstellen
Voraussetzungen:
Kenntnisse der diversen für IBM i relevanten Programmiersprachen
