AI/Codex/Grundlagen: Unterschied zwischen den Versionen
imported>Import Version 246 |
Keine Bearbeitungszusammenfassung |
||
| Zeile 1: | Zeile 1: | ||
''Hinweis: Diese Inhalte wurden mit Unterstützung von Künstlicher Intelligenz erstellt und redaktionell überprüft (Transparenzhinweis gemäß Art. 50 EU AI Act).'' | ''Hinweis: Diese Inhalte wurden mit Unterstützung von Künstlicher Intelligenz erstellt und redaktionell überprüft (Transparenzhinweis gemäß Art. 50 EU AI Act).'' | ||
---- | ---- | ||
== Lernziele == | == Lernziele == | ||
Nach dem Durcharbeiten dieses Lernpfads wirst du in der Lage sein: | Nach dem Durcharbeiten dieses Lernpfads wirst du in der Lage sein: | ||
* Die grundlegende Funktionsweise des KI-Programmieragenten Codex zu verstehen. | * Die grundlegende Funktionsweise des KI-Programmieragenten Codex zu verstehen. | ||
* Codex erfolgreich auf deinem System (z. B. als Linux-App oder über eine VS Code-Erweiterung) zu installieren und einzurichten. | * Codex erfolgreich auf deinem System (z. B. als Linux-App oder über eine VS Code-Erweiterung) zu installieren und einzurichten. | ||
| Zeile 12: | Zeile 11: | ||
== Lektion 1: Was ist Codex? == | == Lektion 1: Was ist Codex? == | ||
'''Codex''' ist ein intelligenter KI-Programmieragent, der von OpenAI entwickelt wurde, um dir bei der Softwareentwicklung zu helfen. | |||
Stell dir Codex wie einen sehr schnellen, erfahrenen Programmierpartner vor, der direkt auf deinem Computer oder im Browser "mitdenkt" und arbeitet. Im Gegensatz zu einfachen Chatbots, die dir nur Text als Antwort geben, kann Codex als echter Agent agieren: | |||
* '''Dateien lesen:''' Er kann sich deinen bestehenden Code (die sogenannte "Codebase") ansehen und verstehen. | |||
Stell dir Codex wie einen sehr schnellen, erfahrenen Programmierpartner vor, der direkt auf deinem Computer oder im Browser | |||
* '''Dateien lesen:''' Er kann sich deinen bestehenden Code (die sogenannte | |||
* '''Dateien verändern:''' Er kann neuen Code direkt in deine Dateien schreiben oder Fehler korrigieren. | * '''Dateien verändern:''' Er kann neuen Code direkt in deine Dateien schreiben oder Fehler korrigieren. | ||
* '''Befehle ausführen:''' Codex kann eigenständig Programme in deiner Kommandozeile (dem Terminal) ausführen, um z. B. Installationen vorzunehmen oder Tests zu starten. | * '''Befehle ausführen:''' Codex kann eigenständig Programme in deiner Kommandozeile (dem Terminal) ausführen, um z. B. Installationen vorzunehmen oder Tests zu starten. | ||
| Zeile 24: | Zeile 21: | ||
== Lektion 2: Installation von Codex == | == Lektion 2: Installation von Codex == | ||
Damit Codex an deinen Dateien arbeiten kann, musst du ihn in deine Entwicklungsumgebung integrieren. Es gibt zwei empfohlene Wege für den Einstieg: | Damit Codex an deinen Dateien arbeiten kann, musst du ihn in deine Entwicklungsumgebung integrieren. Es gibt zwei empfohlene Wege für den Einstieg: | ||
=== Option A: Die Codex-App (z. B. für Linux) === | === Option A: Die Codex-App (z. B. für Linux) === | ||
OpenAI bietet mittlerweile eigenständige Codex-Desktop-Anwendungen an. | OpenAI bietet mittlerweile eigenständige Codex-Desktop-Anwendungen an. | ||
# Lade dir die passende Codex-App für dein Betriebssystem (Linux, macOS oder Windows) von der offiziellen Website herunter. | # Lade dir die passende Codex-App für dein Betriebssystem (Linux, macOS oder Windows) von der offiziellen Website herunter. | ||
# Installiere die App wie jedes andere Programm. | # Installiere die App wie jedes andere Programm. | ||
| Zeile 36: | Zeile 30: | ||
=== Option B: Codex-IDE-Erweiterungen (z. B. für Visual Studio Code) === | === Option B: Codex-IDE-Erweiterungen (z. B. für Visual Studio Code) === | ||
Wenn du bereits einen Editor wie Visual Studio Code (VS Code) oder Cursor verwendest, ist die Integration nahtlos: | Wenn du bereits einen Editor wie Visual Studio Code (VS Code) oder Cursor verwendest, ist die Integration nahtlos: | ||
# Öffne VS Code. | # Öffne VS Code. | ||
# Gehe am linken Rand auf das Symbol für | # Gehe am linken Rand auf das Symbol für "Erweiterungen" (Extensions). | ||
# Suche nach der offiziellen ChatGPT/Codex-Erweiterung von OpenAI und klicke auf | # Suche nach der offiziellen ChatGPT/Codex-Erweiterung von OpenAI und klicke auf "Installieren". | ||
# Nach der Installation findest du das Codex-Symbol in der Seitenleiste. Klicke darauf und melde dich dort an. | # Nach der Installation findest du das Codex-Symbol in der Seitenleiste. Klicke darauf und melde dich dort an. | ||
== Lektion 3: Einrichten des Arbeitsbereichs und Best Practices == | == Lektion 3: Einrichten des Arbeitsbereichs und Best Practices == | ||
Bevor Codex für dich programmiert, ist es enorm wichtig, die Umgebung sicher aufzubauen. Da Codex selbstständig Code löschen oder verändern kann, nutzen wir ein sogenanntes Versionskontrollsystem namens '''Git'''. | Bevor Codex für dich programmiert, ist es enorm wichtig, die Umgebung sicher aufzubauen. Da Codex selbstständig Code löschen oder verändern kann, nutzen wir ein sogenanntes Versionskontrollsystem namens '''Git'''. | ||
=== Der Agent Mode === | === Der Agent Mode === | ||
Codex startet standardmäßig im sogenannten '''„Agent Mode“'''. In diesem Modus darf Codex eigenmächtig in deinen Dateien lesen, schreiben und Kommandos ausführen, wenn er es zur Lösung deiner Aufgabe für nötig hält. | |||
Codex startet standardmäßig im sogenannten '''„Agent Mode“'''. In diesem Modus darf Codex eigenmächtig in deinen Dateien lesen, schreiben und Kommandos ausführen, wenn er es zur Lösung deiner Aufgabe für nötig hält. | |||
=== Best Practice: Git-Checkpoints erstellen === | === Best Practice: Git-Checkpoints erstellen === | ||
Damit du nie Arbeitsfortschritte verlierst, speicherst du deinen Code, bevor Codex ihn verändert. Diese "Speicherpunkte" nennt man Commits in Git. | |||
Damit du nie Arbeitsfortschritte verlierst, speicherst du deinen Code, bevor Codex ihn verändert. Diese | |||
# Öffne deinen Projektordner im Terminal oder in VS Code. | # Öffne deinen Projektordner im Terminal oder in VS Code. | ||
# Führe `git init` aus, falls noch kein Git-Repository existiert. | # Führe `git init` aus, falls noch kein Git-Repository existiert. | ||
# Bevor du einen Prompt an Codex schickst, speichere den aktuellen Stand: | # Bevor du einen Prompt an Codex schickst, speichere den aktuellen Stand: | ||
#* `git add .` (Fügt alle Änderungen hinzu) | #* `git add .` (Fügt alle Änderungen hinzu) | ||
#* `git commit -m | #* `git commit -m "Stand vor Codex Änderung"` (Setzt den Checkpoint) | ||
# Wenn Codex einen Fehler macht oder das Ergebnis nicht gefällt, kannst du mit Git ganz einfach zum alten Speicherpunkt zurückspringen. | # Wenn Codex einen Fehler macht oder das Ergebnis nicht gefällt, kannst du mit Git ganz einfach zum alten Speicherpunkt zurückspringen. | ||
== Lektion 4: Ziel - Das erste Projekt und der erste Prompt == | == Lektion 4: Ziel - Das erste Projekt und der erste Prompt == | ||
Nun ist alles bereit für deinen ersten Arbeitsauftrag (Prompt) an Codex! | Nun ist alles bereit für deinen ersten Arbeitsauftrag (Prompt) an Codex! | ||
| Zeile 73: | Zeile 60: | ||
# Gehe in das Codex-Chatfenster, stelle sicher, dass der Agent Mode aktiv ist, und gib deinen ersten Prompt ein: | # Gehe in das Codex-Chatfenster, stelle sicher, dass der Agent Mode aktiv ist, und gib deinen ersten Prompt ein: | ||
'''Beispiel-Prompt:''' | '''Beispiel-Prompt:''' | ||
> ''"Erkläre mir dieses Projekt (es ist aktuell noch fast leer). Generiere dann bitte eine einfache, farbenfrohe „Hallo Welt“-Webseite in der index.html Datei."'' | |||
Beobachte nun, wie Codex analysiert, dass das Projekt neu ist, und wie er anschließend die Datei selbstständig bearbeitet und dir das Ergebnis erklärt. | Beobachte nun, wie Codex analysiert, dass das Projekt neu ist, und wie er anschließend die Datei selbstständig bearbeitet und dir das Ergebnis erklärt. | ||
== Übungen == | == Übungen == | ||
Um das Kernkonzept zu festigen, bearbeite diese drei Übungen: | Um das Kernkonzept zu festigen, bearbeite diese drei Übungen: | ||
# '''Installation überprüfen:''' Teste, ob du das Codex-Panel in VS Code öffnen und dich erfolgreich anmelden kannst. | # '''Installation überprüfen:''' Teste, ob du das Codex-Panel in VS Code öffnen und dich erfolgreich anmelden kannst. | ||
# '''Git-Routine trainieren:''' Lege drei Textdateien an. Setze einen Git-Checkpoint, lösche danach eine Datei von Hand, und recherchiere (oder frage Codex), wie du die gelöschte Datei über Git wiederherstellen kannst. | # '''Git-Routine trainieren:''' Lege drei Textdateien an. Setze einen Git-Checkpoint, lösche danach eine Datei von Hand, und recherchiere (oder frage Codex), wie du die gelöschte Datei über Git wiederherstellen kannst. | ||
# '''Der Erklär-Bär:''' Lade dir ein kleines, unbekanntes Code-Beispiel aus dem Internet herunter (z.B. ein kurzes Python-Skript) und bitte Codex mit dem Prompt: ''„Bitte erkläre mir dieses Skript Zeile für Zeile so, als wäre ich 10 Jahre alt.“'' | # '''Der Erklär-Bär:''' Lade dir ein kleines, unbekanntes Code-Beispiel aus dem Internet herunter (z.B. ein kurzes Python-Skript) und bitte Codex mit dem Prompt: ''„Bitte erkläre mir dieses Skript Zeile für Zeile so, als wäre ich 10 Jahre alt.“'' | ||
--- | |||
== Praxisbezug == | == Praxisbezug == | ||
Um Programmierung schnell und praxisnah zu erlernen, kombinieren wir zwei Lernstrategien: | Um Programmierung schnell und praxisnah zu erlernen, kombinieren wir zwei Lernstrategien: | ||
* '''Projektbasiertes Lernen''' (viele kleine, schnelle Erfolgserlebnisse) und | |||
* '''Projektbasiertes Lernen''' (viele kleine, schnelle Erfolgserlebnisse) und | |||
* '''Top-Down-Lernen''' (das große Ganze verstehen und dann in Details abtauchen). | * '''Top-Down-Lernen''' (das große Ganze verstehen und dann in Details abtauchen). | ||
| Zeile 98: | Zeile 83: | ||
=== Projektbasiertes Lernen: 50 Mini-Projekte === | === Projektbasiertes Lernen: 50 Mini-Projekte === | ||
Diese Aufgaben sind klein und in 10 bis 30 Minuten lösbar. Sie eignen sich perfekt, um den Umgang mit Prompts zu üben und den Arbeitsfluss mit Codex zu trainieren. | Diese Aufgaben sind klein und in 10 bis 30 Minuten lösbar. Sie eignen sich perfekt, um den Umgang mit Prompts zu üben und den Arbeitsfluss mit Codex zu trainieren. | ||
# '''Hallo-Welt-Webseite:''' Erstelle eine einfache Webseite, die zentriert | # '''Hallo-Welt-Webseite:''' Erstelle eine einfache Webseite, die zentriert "Hallo Welt" anzeigt. | ||
# '''Zufallszahlengenerator:''' Ein Programm, das auf Knopfdruck eine Zahl zwischen 1 und 10 ausgibt. | # '''Zufallszahlengenerator:''' Ein Programm, das auf Knopfdruck eine Zahl zwischen 1 und 10 ausgibt. | ||
# '''Passwort-Generator:''' Generiert zufällige, sichere Passwörter mit Sonderzeichen. | # '''Passwort-Generator:''' Generiert zufällige, sichere Passwörter mit Sonderzeichen. | ||
| Zeile 112: | Zeile 96: | ||
# '''Wortzähler:''' Ein Tool, das zählt, wie viele Wörter ein eingegebener Text hat. | # '''Wortzähler:''' Ein Tool, das zählt, wie viele Wörter ein eingegebener Text hat. | ||
# '''Vokal-Zähler:''' Zählt alle A, E, I, O, U in einem Satz. | # '''Vokal-Zähler:''' Zählt alle A, E, I, O, U in einem Satz. | ||
# '''Palindrom-Prüfer:''' Prüft, ob ein Wort (wie | # '''Palindrom-Prüfer:''' Prüft, ob ein Wort (wie "Lagerregal") vorwärts und rückwärts gleich ist. | ||
# '''Quiz-Spiel (Konsole):''' 3 Multiple-Choice-Fragen mit Punktewertung. | # '''Quiz-Spiel (Konsole):''' 3 Multiple-Choice-Fragen mit Punktewertung. | ||
# '''BMI-Rechner:''' Berechnet den Body-Mass-Index anhand von Größe und Gewicht. | # '''BMI-Rechner:''' Berechnet den Body-Mass-Index anhand von Größe und Gewicht. | ||
# '''Schere-Stein-Papier:''' Spiele gegen den Computer in der Konsole. | # '''Schere-Stein-Papier:''' Spiele gegen den Computer in der Konsole. | ||
# '''Währungsumrechner:''' Rechnet Euro in Dollar mit einem festen Kurs um. | # '''Währungsumrechner:''' Rechnet Euro in Dollar mit einem festen Kurs um. | ||
# '''Datum & | # '''Datum & Uhrzeit:''' Ein Skript, das dir das aktuelle Datum hübsch formatiert anzeigt. | ||
# '''Digitales Adressbuch:''' Speichert Namen und Telefonnummern für eine laufende Sitzung. | # '''Digitales Adressbuch:''' Speichert Namen und Telefonnummern für eine laufende Sitzung. | ||
# '''Morsecode-Übersetzer:''' Übersetzt normalen Text in Morsezeichen. | # '''Morsecode-Übersetzer:''' Übersetzt normalen Text in Morsezeichen. | ||
# '''Text umkehren:''' Dreht die Buchstaben eines Wortes um (aus | # '''Text umkehren:''' Dreht die Buchstaben eines Wortes um (aus "Baum" wird "muaB"). | ||
# '''Schaltjahr-Prüfer:''' Sagt dir, ob ein eingegebenes Jahr ein Schaltjahr ist. | # '''Schaltjahr-Prüfer:''' Sagt dir, ob ein eingegebenes Jahr ein Schaltjahr ist. | ||
# '''Primzahl-Prüfer:''' Überprüft, ob eine Zahl eine Primzahl ist. | # '''Primzahl-Prüfer:''' Überprüft, ob eine Zahl eine Primzahl ist. | ||
| Zeile 128: | Zeile 112: | ||
# '''Trinkgeld-Rechner:''' Berechnet, wie hoch z. B. 15% Trinkgeld für eine Restaurantrechnung sind. | # '''Trinkgeld-Rechner:''' Berechnet, wie hoch z. B. 15% Trinkgeld für eine Restaurantrechnung sind. | ||
# '''Lottozahlen-Generator:''' Zieht 6 zufällige Zahlen aus 49. | # '''Lottozahlen-Generator:''' Zieht 6 zufällige Zahlen aus 49. | ||
# '''Römische Zahlen:''' Konvertiert z. B. | # '''Römische Zahlen:''' Konvertiert z. B. "5" in "V". | ||
# '''Caesar-Verschlüsselung:''' Verschiebt Buchstaben geheim im Alphabet (z.B. A wird B). | # '''Caesar-Verschlüsselung:''' Verschiebt Buchstaben geheim im Alphabet (z.B. A wird B). | ||
# '''Dateigrößen-Umrechner:''' Rechnet Bytes in Megabytes um. | # '''Dateigrößen-Umrechner:''' Rechnet Bytes in Megabytes um. | ||
| Zeile 136: | Zeile 120: | ||
# '''Datei-Leser:''' Ein Skript, das den Text einer lokalen `.txt` Datei im Terminal ausgibt. | # '''Datei-Leser:''' Ein Skript, das den Text einer lokalen `.txt` Datei im Terminal ausgibt. | ||
# '''Noten-Rechner:''' Berechnet den Durchschnitt von 5 eingegebenen Schulnoten. | # '''Noten-Rechner:''' Berechnet den Durchschnitt von 5 eingegebenen Schulnoten. | ||
# '''IP-Validierer:''' Sagt dir, ob z.B. | # '''IP-Validierer:''' Sagt dir, ob z.B. "192.168.0.1" eine gültige IP-Adresse ist. | ||
# '''Text in Großbuchstaben:''' Ein HTML-Feld, das jede Eingabe direkt in GROSSBUCHSTABEN verwandelt. | # '''Text in Großbuchstaben:''' Ein HTML-Feld, das jede Eingabe direkt in GROSSBUCHSTABEN verwandelt. | ||
# '''Passwort-Stärke-Prüfer:''' Prüft, ob ein Passwort lang genug ist. | # '''Passwort-Stärke-Prüfer:''' Prüft, ob ein Passwort lang genug ist. | ||
# '''Email-Validierer:''' Prüft, ob in einer E-Mail ein | # '''Email-Validierer:''' Prüft, ob in einer E-Mail ein "@" Zeichen vorhanden ist. | ||
# '''Münzwurf-Simulator:''' Gibt | # '''Münzwurf-Simulator:''' Gibt "Kopf" oder "Zahl" aus. | ||
# '''Gerade oder Ungerade:''' Sagt dir, ob eine Zahl durch 2 teilbar ist. | # '''Gerade oder Ungerade:''' Sagt dir, ob eine Zahl durch 2 teilbar ist. | ||
# '''Fakultäts-Rechner:''' Berechnet die mathematische Fakultät (z.B. 5! = 120). | # '''Fakultäts-Rechner:''' Berechnet die mathematische Fakultät (z.B. 5! = 120). | ||
| Zeile 146: | Zeile 130: | ||
# '''Begrüßungs-Bot:''' Fragt nach deinem Namen und gibt basierend auf der Uhrzeit (Morgen/Abend) eine Grußformel aus. | # '''Begrüßungs-Bot:''' Fragt nach deinem Namen und gibt basierend auf der Uhrzeit (Morgen/Abend) eine Grußformel aus. | ||
# '''Verzeichnis-Anzeiger:''' Listet alle Dateien auf, die in deinem Projektordner liegen. | # '''Verzeichnis-Anzeiger:''' Listet alle Dateien auf, die in deinem Projektordner liegen. | ||
# '''Einfacher Wecker:''' Erwartet eine Uhrzeitangabe und schreibt dann | # '''Einfacher Wecker:''' Erwartet eine Uhrzeitangabe und schreibt dann "Ring Ring!" in die Konsole. | ||
# '''Text zensieren:''' Tauscht Schimpfwörter in einem Text gegen Sternchen aus. | # '''Text zensieren:''' Tauscht Schimpfwörter in einem Text gegen Sternchen aus. | ||
# '''Zeilen im Text zählen:''' Gibt aus, wie viele Zeilen ein langes Dokument hat. | # '''Zeilen im Text zählen:''' Gibt aus, wie viele Zeilen ein langes Dokument hat. | ||
# '''Temperatur-Tabelle:''' Druckt eine schöne Tabelle für Celsius vs. | # '''Temperatur-Tabelle:''' Druckt eine schöne Tabelle für Celsius vs. Fahrenheit für die Werte 0 bis 100 aus. | ||
# '''Visitenkarte (HTML):''' Eine kleine, hübsch gestaltete HTML/CSS Visitenkarte mit deinem Namen. | # '''Visitenkarte (HTML):''' Eine kleine, hübsch gestaltete HTML/CSS Visitenkarte mit deinem Namen. | ||
=== Top-Down-Lernen: 25 Große Projekte === | === Top-Down-Lernen: 25 Große Projekte === | ||
Bei diesen Projekten startest du mit der großen Vision einer kompletten Anwendung. Codex hilft dir, diese Applikationen Schritt für Schritt (von oben nach unten) aufzubauen. Du lernst nicht nur das Programmieren, sondern auch Datei-Architektur, Abhängigkeiten und Design-Patterns. | Bei diesen Projekten startest du mit der großen Vision einer kompletten Anwendung. Codex hilft dir, diese Applikationen Schritt für Schritt (von oben nach unten) aufzubauen. Du lernst nicht nur das Programmieren, sondern auch Datei-Architektur, Abhängigkeiten und Design-Patterns. | ||
| Zeile 162: | Zeile 145: | ||
# '''E-Commerce Warenkorb:''' Eine Produktübersicht (Frontend) inklusive der Logik, Produkte in einen Warenkorb zu legen und Preise zu berechnen. | # '''E-Commerce Warenkorb:''' Eine Produktübersicht (Frontend) inklusive der Logik, Produkte in einen Warenkorb zu legen und Preise zu berechnen. | ||
# '''Passwort-Manager App:''' Eine sichere Desktop- oder Kommandozeilen-Anwendung, die Passwörter verschlüsselt auf der Festplatte speichert. | # '''Passwort-Manager App:''' Eine sichere Desktop- oder Kommandozeilen-Anwendung, die Passwörter verschlüsselt auf der Festplatte speichert. | ||
# '''Kanban-Board (wie Trello):''' Ein Web-Ansatz mit Drag-and-Drop, um Karten (Aufgaben) in Spalten wie | # '''Kanban-Board (wie Trello):''' Ein Web-Ansatz mit Drag-and-Drop, um Karten (Aufgaben) in Spalten wie "To-Do", "Doing" und "Done" zu ziehen. | ||
# '''Workout-Tracker:''' Eine App, um sein Training, Sätze und Wiederholungen inklusive eines Kalenders festzuhalten. | # '''Workout-Tracker:''' Eine App, um sein Training, Sätze und Wiederholungen inklusive eines Kalenders festzuhalten. | ||
# '''Finanz- und Ausgaben-Manager:''' Kategorisiere deine Ausgaben. Die App soll am Monatsende übersichtliche Kuchen-Diagramme zeichnen. | # '''Finanz- und Ausgaben-Manager:''' Kategorisiere deine Ausgaben. Die App soll am Monatsende übersichtliche Kuchen-Diagramme zeichnen. | ||
# '''Automatisches Datei-Aufräum-Tool:''' Ein Skript, dem du deinen Download-Ordner gibst und das alle Bilder in | # '''Automatisches Datei-Aufräum-Tool:''' Ein Skript, dem du deinen Download-Ordner gibst und das alle Bilder in "Bilder", alle PDFs in "Dokumente" etc. wegsortiert. | ||
# '''RESTful API für eine Bibliothek:''' Erstelle einen Web-Server, an den man Daten senden kann, um Bücher aus einer Datenbank ein- und auszutragen. | # '''RESTful API für eine Bibliothek:''' Erstelle einen Web-Server, an den man Daten senden kann, um Bücher aus einer Datenbank ein- und auszutragen. | ||
# '''Mini-Social-Media-Feed:''' Nutzer können kurze Text-Posts absetzen, Kommentare schreiben und den Beitrag | # '''Mini-Social-Media-Feed:''' Nutzer können kurze Text-Posts absetzen, Kommentare schreiben und den Beitrag "liken". | ||
# '''Markdown zu HTML Konverter (Webbasiert):''' Ein Editorfenster wie in Notion, wo du links schreibst und rechts live die formatierte Seite siehst. | # '''Markdown zu HTML Konverter (Webbasiert):''' Ein Editorfenster wie in Notion, wo du links schreibst und rechts live die formatierte Seite siehst. | ||
# '''Rezept-Plattform:''' Füge Zutaten hinzu und lasse dir aus den gespeicherten Rezepten vorschlagen, was du heute kochen kannst. | # '''Rezept-Plattform:''' Füge Zutaten hinzu und lasse dir aus den gespeicherten Rezepten vorschlagen, was du heute kochen kannst. | ||
Aktuelle Version vom 5. März 2026, 04:30 Uhr
Hinweis: Diese Inhalte wurden mit Unterstützung von Künstlicher Intelligenz erstellt und redaktionell überprüft (Transparenzhinweis gemäß Art. 50 EU AI Act).
Lernziele
Nach dem Durcharbeiten dieses Lernpfads wirst du in der Lage sein:
- Die grundlegende Funktionsweise des KI-Programmieragenten Codex zu verstehen.
- Codex erfolgreich auf deinem System (z. B. als Linux-App oder über eine VS Code-Erweiterung) zu installieren und einzurichten.
- Deine Arbeitsumgebung sicher und professionell vorzubereiten (z. B. durch das Setzen von Git-Checkpoints).
- Dein erstes Projekt im „Agent Mode“ zu starten und Codex erste produktive Aufgaben (Prompts) zu übergeben.
Lektion 1: Was ist Codex?
Codex ist ein intelligenter KI-Programmieragent, der von OpenAI entwickelt wurde, um dir bei der Softwareentwicklung zu helfen.
Stell dir Codex wie einen sehr schnellen, erfahrenen Programmierpartner vor, der direkt auf deinem Computer oder im Browser "mitdenkt" und arbeitet. Im Gegensatz zu einfachen Chatbots, die dir nur Text als Antwort geben, kann Codex als echter Agent agieren:
- Dateien lesen: Er kann sich deinen bestehenden Code (die sogenannte "Codebase") ansehen und verstehen.
- Dateien verändern: Er kann neuen Code direkt in deine Dateien schreiben oder Fehler korrigieren.
- Befehle ausführen: Codex kann eigenständig Programme in deiner Kommandozeile (dem Terminal) ausführen, um z. B. Installationen vorzunehmen oder Tests zu starten.
Für Programmieranfänger ist dies ein riesiger Vorteil: Du erklärst Codex in ganz normaler, verständlicher Sprache, was du bauen möchtest, und Codex übersetzt deine Ideen in funktionierenden Code.
Lektion 2: Installation von Codex
Damit Codex an deinen Dateien arbeiten kann, musst du ihn in deine Entwicklungsumgebung integrieren. Es gibt zwei empfohlene Wege für den Einstieg:
Option A: Die Codex-App (z. B. für Linux)
OpenAI bietet mittlerweile eigenständige Codex-Desktop-Anwendungen an.
- Lade dir die passende Codex-App für dein Betriebssystem (Linux, macOS oder Windows) von der offiziellen Website herunter.
- Installiere die App wie jedes andere Programm.
- Starte die App und melde dich mit deinem ChatGPT-Account oder einem OpenAI API-Schlüssel an.
Option B: Codex-IDE-Erweiterungen (z. B. für Visual Studio Code)
Wenn du bereits einen Editor wie Visual Studio Code (VS Code) oder Cursor verwendest, ist die Integration nahtlos:
- Öffne VS Code.
- Gehe am linken Rand auf das Symbol für "Erweiterungen" (Extensions).
- Suche nach der offiziellen ChatGPT/Codex-Erweiterung von OpenAI und klicke auf "Installieren".
- Nach der Installation findest du das Codex-Symbol in der Seitenleiste. Klicke darauf und melde dich dort an.
Lektion 3: Einrichten des Arbeitsbereichs und Best Practices
Bevor Codex für dich programmiert, ist es enorm wichtig, die Umgebung sicher aufzubauen. Da Codex selbstständig Code löschen oder verändern kann, nutzen wir ein sogenanntes Versionskontrollsystem namens Git.
Der Agent Mode
Codex startet standardmäßig im sogenannten „Agent Mode“. In diesem Modus darf Codex eigenmächtig in deinen Dateien lesen, schreiben und Kommandos ausführen, wenn er es zur Lösung deiner Aufgabe für nötig hält.
Best Practice: Git-Checkpoints erstellen
Damit du nie Arbeitsfortschritte verlierst, speicherst du deinen Code, bevor Codex ihn verändert. Diese "Speicherpunkte" nennt man Commits in Git.
- Öffne deinen Projektordner im Terminal oder in VS Code.
- Führe `git init` aus, falls noch kein Git-Repository existiert.
- Bevor du einen Prompt an Codex schickst, speichere den aktuellen Stand:
- `git add .` (Fügt alle Änderungen hinzu)
- `git commit -m "Stand vor Codex Änderung"` (Setzt den Checkpoint)
- Wenn Codex einen Fehler macht oder das Ergebnis nicht gefällt, kannst du mit Git ganz einfach zum alten Speicherpunkt zurückspringen.
Lektion 4: Ziel - Das erste Projekt und der erste Prompt
Nun ist alles bereit für deinen ersten Arbeitsauftrag (Prompt) an Codex!
- Erstelle einen neuen, leeren Ordner auf deinem Computer und nenne ihn `mein-erstes-projekt`.
- Öffne diesen Ordner in VS Code oder in der Codex-App.
- Erstelle eine einfache, leere Datei darin, z. B. `index.html`.
- Setze deinen ersten Git-Checkpoint (siehe Lektion 3).
- Gehe in das Codex-Chatfenster, stelle sicher, dass der Agent Mode aktiv ist, und gib deinen ersten Prompt ein:
Beispiel-Prompt: > "Erkläre mir dieses Projekt (es ist aktuell noch fast leer). Generiere dann bitte eine einfache, farbenfrohe „Hallo Welt“-Webseite in der index.html Datei."
Beobachte nun, wie Codex analysiert, dass das Projekt neu ist, und wie er anschließend die Datei selbstständig bearbeitet und dir das Ergebnis erklärt.
Übungen
Um das Kernkonzept zu festigen, bearbeite diese drei Übungen:
- Installation überprüfen: Teste, ob du das Codex-Panel in VS Code öffnen und dich erfolgreich anmelden kannst.
- Git-Routine trainieren: Lege drei Textdateien an. Setze einen Git-Checkpoint, lösche danach eine Datei von Hand, und recherchiere (oder frage Codex), wie du die gelöschte Datei über Git wiederherstellen kannst.
- Der Erklär-Bär: Lade dir ein kleines, unbekanntes Code-Beispiel aus dem Internet herunter (z.B. ein kurzes Python-Skript) und bitte Codex mit dem Prompt: „Bitte erkläre mir dieses Skript Zeile für Zeile so, als wäre ich 10 Jahre alt.“
---
Praxisbezug
Um Programmierung schnell und praxisnah zu erlernen, kombinieren wir zwei Lernstrategien:
- Projektbasiertes Lernen (viele kleine, schnelle Erfolgserlebnisse) und
- Top-Down-Lernen (das große Ganze verstehen und dann in Details abtauchen).
Hier sind insgesamt 75 Projektideen, die du gemeinsam mit Codex bearbeiten kannst. Lass Codex den Code schreiben, aber bitte ihn stets um Erklärungen!
Projektbasiertes Lernen: 50 Mini-Projekte
Diese Aufgaben sind klein und in 10 bis 30 Minuten lösbar. Sie eignen sich perfekt, um den Umgang mit Prompts zu üben und den Arbeitsfluss mit Codex zu trainieren.
- Hallo-Welt-Webseite: Erstelle eine einfache Webseite, die zentriert "Hallo Welt" anzeigt.
- Zufallszahlengenerator: Ein Programm, das auf Knopfdruck eine Zahl zwischen 1 und 10 ausgibt.
- Passwort-Generator: Generiert zufällige, sichere Passwörter mit Sonderzeichen.
- Einfacher Taschenrechner: Ein Konsolen-Programm für Plus, Minus, Mal und Geteilt.
- Einheitenumrechner: Rechnet Celsius in Fahrenheit um.
- To-Do-Liste im Terminal: Erlaube das Hinzufügen und Anzeigen von Aufgaben.
- Countdown-Timer: Zählt von z.B. 10 Sekunden herunter bis null und piept dann.
- Würfelsimulator: Simuliert das Werfen eines sechsseitigen Würfels.
- Farb-Hex-Code-Generator: Gibt zufällige HTML-Farbcodes (z. B. #FF5500) aus.
- Wortzähler: Ein Tool, das zählt, wie viele Wörter ein eingegebener Text hat.
- Vokal-Zähler: Zählt alle A, E, I, O, U in einem Satz.
- Palindrom-Prüfer: Prüft, ob ein Wort (wie "Lagerregal") vorwärts und rückwärts gleich ist.
- Quiz-Spiel (Konsole): 3 Multiple-Choice-Fragen mit Punktewertung.
- BMI-Rechner: Berechnet den Body-Mass-Index anhand von Größe und Gewicht.
- Schere-Stein-Papier: Spiele gegen den Computer in der Konsole.
- Währungsumrechner: Rechnet Euro in Dollar mit einem festen Kurs um.
- Datum & Uhrzeit: Ein Skript, das dir das aktuelle Datum hübsch formatiert anzeigt.
- Digitales Adressbuch: Speichert Namen und Telefonnummern für eine laufende Sitzung.
- Morsecode-Übersetzer: Übersetzt normalen Text in Morsezeichen.
- Text umkehren: Dreht die Buchstaben eines Wortes um (aus "Baum" wird "muaB").
- Schaltjahr-Prüfer: Sagt dir, ob ein eingegebenes Jahr ein Schaltjahr ist.
- Primzahl-Prüfer: Überprüft, ob eine Zahl eine Primzahl ist.
- ASCII-Art Generator: Malt kleine Formen (wie Dreiecke) aus Sternchen (`*`) ins Terminal.
- Zitat des Tages: Speichert 5 Zitate im Code und gibt bei jedem Start ein zufälliges aus.
- Stoppuhr: Ein Programm, das beim Start beginnt zu zählen und bei Tastendruck stoppt.
- Trinkgeld-Rechner: Berechnet, wie hoch z. B. 15% Trinkgeld für eine Restaurantrechnung sind.
- Lottozahlen-Generator: Zieht 6 zufällige Zahlen aus 49.
- Römische Zahlen: Konvertiert z. B. "5" in "V".
- Caesar-Verschlüsselung: Verschiebt Buchstaben geheim im Alphabet (z.B. A wird B).
- Dateigrößen-Umrechner: Rechnet Bytes in Megabytes um.
- Altersrechner: Berechnet das genaue jetzige Alter aus einem Geburtsjahrgang.
- Namensgenerator: Kombiniert Vor- und Nachnamen aus zwei Listen zufällig.
- Mini-Ladebalken: Simuliert im Terminal einen Ladebalken, der sich füllt.
- Datei-Leser: Ein Skript, das den Text einer lokalen `.txt` Datei im Terminal ausgibt.
- Noten-Rechner: Berechnet den Durchschnitt von 5 eingegebenen Schulnoten.
- IP-Validierer: Sagt dir, ob z.B. "192.168.0.1" eine gültige IP-Adresse ist.
- Text in Großbuchstaben: Ein HTML-Feld, das jede Eingabe direkt in GROSSBUCHSTABEN verwandelt.
- Passwort-Stärke-Prüfer: Prüft, ob ein Passwort lang genug ist.
- Email-Validierer: Prüft, ob in einer E-Mail ein "@" Zeichen vorhanden ist.
- Münzwurf-Simulator: Gibt "Kopf" oder "Zahl" aus.
- Gerade oder Ungerade: Sagt dir, ob eine Zahl durch 2 teilbar ist.
- Fakultäts-Rechner: Berechnet die mathematische Fakultät (z.B. 5! = 120).
- Steuer-Rechner: Addiert automatisch 19% Mehrwertsteuer auf einen Netto-Betrag.
- Begrüßungs-Bot: Fragt nach deinem Namen und gibt basierend auf der Uhrzeit (Morgen/Abend) eine Grußformel aus.
- Verzeichnis-Anzeiger: Listet alle Dateien auf, die in deinem Projektordner liegen.
- Einfacher Wecker: Erwartet eine Uhrzeitangabe und schreibt dann "Ring Ring!" in die Konsole.
- Text zensieren: Tauscht Schimpfwörter in einem Text gegen Sternchen aus.
- Zeilen im Text zählen: Gibt aus, wie viele Zeilen ein langes Dokument hat.
- Temperatur-Tabelle: Druckt eine schöne Tabelle für Celsius vs. Fahrenheit für die Werte 0 bis 100 aus.
- Visitenkarte (HTML): Eine kleine, hübsch gestaltete HTML/CSS Visitenkarte mit deinem Namen.
Top-Down-Lernen: 25 Große Projekte
Bei diesen Projekten startest du mit der großen Vision einer kompletten Anwendung. Codex hilft dir, diese Applikationen Schritt für Schritt (von oben nach unten) aufzubauen. Du lernst nicht nur das Programmieren, sondern auch Datei-Architektur, Abhängigkeiten und Design-Patterns.
- Fullstack To-Do-Web-App: Mit Datenbank (z.B. SQLite) und Frontend, um Aufgaben dauerhaft zu speichern.
- Persönliches Blog-System: Ein System, um Artikel im Markdown-Format hochzuladen, die dann als echte Webseite gerendert werden.
- Echtzeit Chat-Anwendung: Nutze WebSockets, damit zwei Personen in unterschiedlichen Browserfenstern miteinander schreiben können.
- Wetter-Dashboard: Hole echte Wetterdaten über eine externe API (z.B. OpenWeatherMap) und stelle sie mit hübschen Grafiken dar.
- E-Commerce Warenkorb: Eine Produktübersicht (Frontend) inklusive der Logik, Produkte in einen Warenkorb zu legen und Preise zu berechnen.
- Passwort-Manager App: Eine sichere Desktop- oder Kommandozeilen-Anwendung, die Passwörter verschlüsselt auf der Festplatte speichert.
- Kanban-Board (wie Trello): Ein Web-Ansatz mit Drag-and-Drop, um Karten (Aufgaben) in Spalten wie "To-Do", "Doing" und "Done" zu ziehen.
- Workout-Tracker: Eine App, um sein Training, Sätze und Wiederholungen inklusive eines Kalenders festzuhalten.
- Finanz- und Ausgaben-Manager: Kategorisiere deine Ausgaben. Die App soll am Monatsende übersichtliche Kuchen-Diagramme zeichnen.
- Automatisches Datei-Aufräum-Tool: Ein Skript, dem du deinen Download-Ordner gibst und das alle Bilder in "Bilder", alle PDFs in "Dokumente" etc. wegsortiert.
- RESTful API für eine Bibliothek: Erstelle einen Web-Server, an den man Daten senden kann, um Bücher aus einer Datenbank ein- und auszutragen.
- Mini-Social-Media-Feed: Nutzer können kurze Text-Posts absetzen, Kommentare schreiben und den Beitrag "liken".
- Markdown zu HTML Konverter (Webbasiert): Ein Editorfenster wie in Notion, wo du links schreibst und rechts live die formatierte Seite siehst.
- Rezept-Plattform: Füge Zutaten hinzu und lasse dir aus den gespeicherten Rezepten vorschlagen, was du heute kochen kannst.
- Netzwerk-Tic-Tac-Toe: Eine Version des Spiels, die man über zwei verschiedene Rechner im gleichen WLAN spielen kann.
- URL-Shortener (wie bit.ly): Ein Service, aus langen URLs kurze Links generiert und alle Klicks darauf in einer Datenbank zählt.
- Automatisches System-Backup-Skript: Ein fortgeschrittenes Programm, das jede Nacht wichtige Ordner als ZIP-Datei komprimiert und das Datum an den Namen hängt.
- PDF-Rechnungsgenerator: Ein Tool, das Produktdaten und Kundennamen aus einer CSV-Tabelle liest und daraus hübsch formatierte PDF-Rechnungen gießt.
- Lokaler Musik-Player: Eine App mit Benutzeroberfläche zum Abspielen lokaler MP3-Dateien inklusive Playlisten-Funktion.
- Börsen-Ticker: Anzeige von Live-Aktienkursen in einem sich automatisch aktualisierenden Web-Dashboard.
- Minimaler E-Mail-Client: Ein Terminal-Programm, mit dem man sich zu einem SMTP/IMAP-Server verbindet, um Mails zu lesen und zu schreiben.
- Multiplayer-Quiz-Plattform: Mit Registrierung/Login. Zwei Spieler müssen zeitgleich Antworten auswählen, am Ende gibt es einen Highscore.
- Cloud-Notiz-Sync-Tool: Ein Programm, das im Hintergrund läuft und Textdateien automatisch auf einen anderen Server kopiert, sobald sie gespeichert werden.
- CLI Bulk-Renamer: Ein mächtiges Kommandozeilenprogramm, um tausende Dateien auf einmal nach bestimmten Mustern umzubenennen (z.B. alle Vorsilben löschen).
- Interaktives Text-Adventure-Spiel: Ein extrem großes Terminal-Spiel mit verschiedenen Räumen, Items (Inventar), Monstern und Speicherfunktion in einer externen Datei.
Hinweis: Diese Inhalte wurden mit Unterstützung von Künstlicher Intelligenz erstellt und redaktionell überprüft (Transparenzhinweis gemäß Art. 50 EU AI Act).