~~REVEAL theme=white~~
====== KI zum Programmieren – Vibe Coding mit Cline und VS Code ======
{{background>lightblue}}
**KI-unterstütztes Programmieren in der Praxis**
//Aufbaukurs für Entwickler:innen mit ersten KI-Erfahrungen//
**vhs Worms**
**Dozent:** Michael Wegener
- Begrüßung, kurze Einordnung: heute geht es um KI als Coding-Partner
- Fokus: Cline als AI Coding Agent in VS Code
- Zielgruppe: Menschen, die bereits programmieren (mind. Grundkenntnisse)
===== Ihr Dozent: Michael Wegener =====
{{background>lightgreen}}
**🎯 Rollen & Erfahrung**
👨💻 **KI-Ingenieur & Entwickler** bei der satware AG
🧩 **Schwerpunkt:** Webanwendungen, KI-Integration, Developer-Workflows
🏗️ **Mitgründer** des U.10 Makerspace an der vhs Worms
👨🏫 **Dozent** für KI & digitale Themen an der vhs
⚡ **30 Jahre** Entwicklungserfahrung
- Eigene Praxis mit KI-gestütztem Programmieren kurz skizzieren
- Betonen: kein „Magic Button“, sondern Werkzeug für Profis
===== Vorstellungsrunde: Ihr Vibe beim Programmieren =====
{{background>lightyellow}}
**👥 Wer sitzt im Raum?**
💻 **Programmiererfahrung** – Sprachen / Frameworks (z.B. Python, JavaScript, C#, …)
🧰 **Tools** – Nutzen Sie bereits VS Code, Git, Tests?
🤖 **KI-Erfahrung** – ChatGPT, Copilot, andere Assistenten?
🎯 **Erwartungen** – Was soll KI Ihnen beim Coden abnehmen?
- Kurzhalten, aber gezielt nach Sprachen & Projekten fragen
- Notieren, welche Ökosysteme (Web, Daten, Scripting) vertreten sind
===== Warum KI beim Programmieren? =====
{{background>lightcoral}}
**🧠 Motivation**
⚡ **Geschwindigkeit** – Boilerplate, Routinecode, Umbauten
🧪 **Qualität** – Tests, Refactorings, Erklärungen zu fremdem Code
📚 **Lernen** – neue Frameworks & Patterns im Kontext des eigenen Projekts
🧱 **Fokus** – mehr Zeit für Architektur & Fachlogik, weniger Fleißarbeit
- Beispiele aus eigener Praxis nennen (z.B. Migrations, Tests, Docs)
- Klarstellen: KI ergänzt, ersetzt aber kein grundlegendes Verständnis
===== Was ist Cline? =====
{{background>lightgreen}}
**🤖 Cline als AI Coding Agent**
🧩 **VS-Code-Erweiterung** – läuft direkt im Editor
🔍 **Plan & Act** – erst verstehen, dann (auf Wunsch) Dateien ändern
📂 **Projekt-Bewusstsein** – liest & bearbeitet mehrere Dateien im Kontext
🌐 **Bring your own LLM** – nutzt Ihre API-Keys (z.B. Claude, GPT, Gemini, lokale Modelle)
- Unterschied zu „nur ChatGPT im Browser“: Dateizugriff, Terminal, Tests
- Abgrenzung zu Cursor/Copilot: Open Source, volle Kontrolle, kein Abo-Zwang
===== LLMs kurz erklärt =====
{{background>lightsteelblue}}
**🧠 Sprachmodelle im Hintergrund**
📚 **Large Language Models** – Musterlernen aus vielen Code- & Textbeispielen
🎯 **Cline als Orchestrator** – schickt Aufgaben an das gewählte Modell
🔑 **Provider** – z.B. Anthropic (Claude), OpenAI (GPT), OpenRouter, lokale Modelle
🧱 **Kosten & Latenz** – abhängig von Modellwahl & Prompt-Größe
- Nur so tief einsteigen, wie für Verständnis nötig
- Hinweis: Im Kurs nutzen wir ein vorbereitetes Setup / Test-Keys
===== Architektur: Plan & Act =====
{{background>lightyellow}}
**🔄 Arbeitsweise von Cline**
📝 **Plan-Modus (Read-only)** – Codebasis analysieren, Konzept ausarbeiten
🛠️ **Act-Modus (Write)** – nach Freigabe Dateien anlegen/ändern
💻 **Terminal & Browser** – Tests ausführen, App starten, Verhalten prüfen
📌 **Checkpoints & Git** – Änderungen nachvollbar & rücksetzbar
- Plan/Act an einem Mini-Beispiel erklären
- Betonen: Kein automatischer Write-Zugriff, immer mit Approval
===== Voraussetzungen & Setup =====
{{background>orange}}
**🧰 Was wir im Kurs nutzen**
🧱 **VS Code** mit Cline-Extension
🔑 **API-Zugänge** – vorbereitete Keys / Demo-Konfiguration
📂 **Beispielprojekt** – kleines Repo (z.B. Web- oder CLI-App)
🐧 **Terminal & Git** – grundlegende Bedienung im Kurs gezeigt
- Prüfen, ob bei allen VS Code & Cline laufen
- Kurz auf .clinerules (Projektregeln) hinweisen
- Optional: Hinweis auf lokale Modelle (Ollama/LM Studio) als Ausblick
===== Live-Demo: Von Aufgabe zu Code =====
{{background>lightgreen}}
**🚀 Cline in Aktion**
1️⃣ **User Story formulieren** – z.B. „kleiner Datei-Importer mit Log-Ausgabe“
2️⃣ **Plan-Modus** – Cline analysiert Projekt, schlägt Vorgehen vor
3️⃣ **Act-Modus** – nach Freigabe: Dateien anlegen/ändern, Tests laufen lassen
4️⃣ **Review** – gemeinsam Code & Testausgaben prüfen
- Nur ein überschaubares Beispiel wählen, Fokus auf Ablauf
- Zeigen, wie Cline mit Fehlermeldungen umgeht
===== Praktische Übung 1: Ihr erstes Vibe Coding =====
{{background>lightyellow}}
**✋ Hands-on: Kleine Funktion mit Tests**
🧾 **Aufgabe:** einfache Funktion (z.B. Daten filtern, Formatierung, kleine API-Abfrage)
🧪 **Tests:** Cline bitten, passende Unit-Tests zu erzeugen und auszuführen
🔁 **Iterationen:** Fehlschläge analysieren, zusammen mit Cline verbessern
📌 **Checkpoint:** Zwischenstand sichern, Unterschiede ansehen
- Teilnehmer:innen wählen Sprache nach Komfort (Python/JS/…)
- Bei Bedarf Vorlagen für Projekte/Struktur bereitstellen
===== Praktische Übung 2: Refactoring & Debugging =====
{{background>lightyellow}}
**🧰 Bestehenden Code verbessern**
📂 **Ausgangspunkt:** bewusst „unschöner“ Beispielcode
🧠 **Analyse:** Cline im Plan-Modus nach Problemen / Verbesserungen fragen
🛠️ **Refactoring:** gezielte Umbauten durch Cline vorschlagen & umsetzen lassen
🐞 **Debugging:** Fehler provozieren, Logs/Stacktraces gemeinsam mit Cline auswerten
- Ziel: Vertrauen in den Debug-/Refactor-Workflow mit KI aufbauen
- Wichtig: Nicht „blind übernehmen“, sondern Entscheidungen verstehen
===== Sicherheit, Datenschutz & EU AI Act =====
{{background>lightcoral}}
**⚖️ Verantwortungsvoll mit KI coden**
🔑 **API-Keys schützen** – nie im Code-Repo speichern
📤 **Daten, die gesendet werden** – Code, Prompts, ggf. Logs → Provider-Richtlinien prüfen
🏢 **Firmen-Policies** – Compliance, Geheimhaltung, ggf. On-Prem/Local-Modelle
🇪🇺 **EU AI Act & Transparenz** – Einsatz von KI im Entwicklungsprozess dokumentieren
- Offen über Risiken sprechen (geistiges Eigentum, sensible Daten)
- Konkrete Pragmatiktipps geben (Redlines, Projektarten, Modellwahl)
===== Typische Stolpersteine & Best Practices =====
{{background>lightgreen}}
**🧭 Aus der Praxis**
🧩 **Zu große Aufgaben** – lieber in kleine, klar formulierte Schritte aufteilen
🔍 **Vertrauen, aber prüfen** – Tests, Code-Review, Sicherheitsaspekte
💸 **Kosten im Blick** – Modellwahl & Kontextgröße steuern
🎯 **Cline „erziehen“** – .clinerules & Projektkonventionen nutzen
- Eigene „Fails“ und Learnings teilen
- Teilnehmer:innen ermutigen, Guidelines für ihr Team zu definieren
===== Fragen & Diskussion =====
{{background>orange}}
**❓ Ihre Erfahrungen & Ideen**
💭 **Fragen** zu Workflow, Setup, Modellen
🧩 **Use Cases** aus Ihrem Alltag – was würden Sie gern automatisieren?
🤝 **Erfahrungsaustausch** – Tipps, die sich in der Praxis bewährt haben
🚀 **Nächste Schritte** – wie es nach dem Kurs weitergehen kann
- Raum für konkrete Projektideen geben
- Optional: Kurz über weiterführende Ressourcen sprechen (Docs, Repos, Communities)
===== Vielen Dank! =====
{{background>lightgreen}}
**🎓 Sie sind jetzt bereit für KI-gestütztes Programmieren:**
✅ **Verstanden**, wie Cline & LLMs im Hintergrund arbeiten
🛠️ **Eigenständig genutzt**, um Code zu schreiben, zu testen & zu verbessern
⚖️ **Bewusstsein** für Sicherheit & Verantwortung beim KI-Einsatz
🚀 **Impulse** für eigene Projekte & Team-Workflows gewonnen
**📧 Kontakt: mw@satware.com | 🌐 U.10 Makerspace**
- Zur weiteren Vertiefung ermutigen
- Hinweis auf mögliche Folgekurse / Makerspace-Angebote