Lektion: Brauchen wir nun nicht mehr Programmieren lernen?
Lektion: Brauchen wir nun nicht mehr Programmieren lernen?
Auf dem Flug zurück zur Erde ist Luna erstaunt, dass diese Technologie der Grundstein für soviele Technologien in den späteren Jahrhunderten war. Da sie noch ein paar Tage unterwegs sein wird, entschließt sie sich schonmal mit ihrem Kommandobericht anzufangen. Sie überlegt welche Auswirkungen diese Technologien im 21. Jahrhundert gehabt haben müssen, insbesondere die ethischen Seiten davon. Sie ist sich sicher, dass diese ChatGPT enorme Möglichkeiten, aber auch die Gefahren, mit sich brachte. Waren die Menschen auf der Station zu stark von KI abhängig? Und was ist mit der Crew passiert?

Vom Chat zum Quellcode: Brauchen wir in Zukunft keine Programmierer mehr?
In dieser Lektion erfährst du, wie die Entwicklung von fortschrittlichen KI-Modellen wie ChatGPT die Programmierwelt beeinflusst hat und ob das traditionelle Programmieren an Bedeutung verloren hat.
Traditionelle Programmierung vs. KI:
Es ist kein Geheimnis, dass KI-Modelle in den letzten Jahren immer prominenter geworden sind. ChatGPT steht dabei an vorderster Front dieser Revolution. Dennoch ist es wichtig zu verstehen, dass die traditionelle Programmierung keineswegs obsolet geworden ist. Sie bleibt das Rückgrat der meisten Software-Anwendungen. Stelle dir vor, ChatGPT wäre ein ausgezeichneter Koch, der eine Vielzahl von Rezepten kennt. Aber jemand muss immer noch die Küche bauen, in der er kocht und auch am Ende überprüfen, ob die gekochten Gerichte auch schmecken. Und das sind die traditionellen Programmierer.
Bei Anwendungen, bei denen höchste Präzision und Kontrolle erforderlich sind, kann man nicht allein auf KI setzen.
KI ist aktuell ein Hebel um schneller zu Programmieren. Mit weniger Wissen, kannst du größere Projekte umsetzen, die vorher für dich nicht möglich gewesen wären. Selbst als erfahrener Entwickler mit über 15 Jahren Erfahrung kann ich sagen, dass ich nochmal schneller arbeiten kann als vorher.
Schneller, weiter, höher: Automatisierung oder Unterstützung?
Der Software-Bereich war schon immer der Bereich der sehr schnelllebig war und bis heute auch ist. Schon vor ChatGPT war es fast unmöglich die Menge an Programmiersprachen, Bibliotheken und Technologien zu überblicken. Jede Woche kommen neue Versionen, Features raus. Besonders als Programmieranfänger ist es schwer einen guten Überblick zu erhalten. Und jetzt setzt sich auch noch KI mit an den Tisch, welches man als Programmierer selbstverständlich im Blick haben muss.
Mit der Einführung von Tools wie ChatGPT wird der Prozess der Entwicklung automatisierter. Das ist so, als ob man einen Übersetzer hätte, der einem die Bedeutung eines unbekannten Wortes in Sekundenschnelle erklärt. Dies kann in einigen Fällen die Notwendigkeit, selbst Code zu schreiben, verringern. Aber es ist wichtig zu betonen, dass es nicht das Ende des Programmierens bedeutet. Es transformiert vielmehr, wie programmiert wird.
Der Prozess ohne KI sieht beim täglichen programmieren so aus:
Idee/Aufgabe --> Grobkonzept --> Feinkonzept --> Programmieren --> Testen & Anpassen --> Release
Dieser Prozess ändert sich nicht. Die Schritte um von Idee zum Release zu kommen beschleunigen sich einfach, da ChatGPT dich nun in jeder Phase unterstützen kann.
Idee/Aufgabe:
Besonders am Anfang weiß man nicht, wie Software überhaupt entwickelt werden kann. ChatGPT kann dich unterstützen die Aufgabe, die du zu lösen hast, besser zu verstehen.
Grobkonzept/Feinkonzept:
Mit den Prompt-Pattern hast du genug Werkzeuge an der Hand um dein Programmierprojekt konzeptuell aufzusetzen. ChatGPT kann dir erklären, welche Komponenten notwendig sind und wie diese zusammenarbeiten sollen.
Programmieren/Test & Anpassen:
Vom Aufsetzen des Projektes bis zum Programmieren selbst. Du hast bereits in Modul 4 gelernt wie du ChatGPT als Programmier-Assistent nutzen kannst.
Besonders wichtig hier: die ständige Feedback-Schleife mit ChatGPT. Der erste Code von ChatGPT kann, muss aber nicht funktionieren.
Release:
Ist deine Software fertig, möchtest du diese irgendwo bereitstellen. Von der Readme zur Installation oder das Schreiben eines komplexen Handbuches kann ChatGPT dich unterstützen.
Das schwere ist nun, dass potenziell jeder Programmieranfänger nun größere Projekte aufsetzen kann, wenn er sich clever von ChatGPT unterstützen lässt. Das Jahrelange Erfahrungen sammeln in Sprache x und Framework y ist mit ChatGPT fast vorbei.
Du darfst dich daran gewöhnen, ChatGPT als Pairprogramming-Partner zu nutzen.
Autonomes Programmieren?
Die heutigen Modelle sind noch nicht in der Lage, das was dort generiert wird, tatsächlich zu verstehen. Wie du in diesem Kurs gelernt hast, haben diese Modelle einfach sehr viele Daten strukturiert ausgewertet und können auf dieser Grundlage komplexe Texte und Quelltexte generieren.
Teilweise hängt ChatGPT bei bestimmten Aufgaben in einer Art Denkschleife fest. Bis solche Denkfehler in ChatBots gelöst sind, können die Modelle noch nicht komplett autonom arbeiten.
Es ist ein wenig wie bei den autonomen Fahrzeuge. Auch beim Programmieren braucht ChatGPT jemanden, der das Steuer zwar nicht ständig übernimmt, aber die Straße und das Ziel im Blick behält und im Falle von Fehlern schnell eingreifen kann.
Das 'Wie' des Programmierens verstehen:
Es ist eine Sache, einem Tool wie ChatGPT zu erlauben, eine Aufgabe zu erledigen, aber es ist eine ganz andere, das dahinterstehende Prinzip zu verstehen. Stell dir vor, du hättest ein Auto, das selbst fahren kann.
Es ist toll, sich zurückzulehnen und die Fahrt zu genießen, aber wenn etwas schief geht, möchtest du wissen, wie man es repariert oder es zumindest zu einem Mechaniker bringt. Ebenso ist es beim Programmieren. Das Verständnis der Logik und der Prinzipien, die hinter den Tools wie ChatGPT stehen, bleibt unerlässlich.
Es hilft nicht nur dabei, solche Modelle effektiver zu nutzen, sondern auch, sie verantwortungsbewusst einzusetzen.
Diese Lektion zeigt, dass, obwohl KI-Modelle wie ChatGPT viele Möglichkeiten bieten, die Grundlagen des Programmierens nach wie vor von zentraler Bedeutung sind.
Es ist eine Kombination aus beidem, die die Technologie vorantreibt und uns ermöglicht, immer innovativere Lösungen zu entwickeln. Wenn du jemand bist, der das Programmieren erst vor kurzem angefangen hat, dann bist du nun in der glücklichen Lage, schneller den je deine Ideen umsetzen zu können.
Du kannst nun mit Grundlagenwissen (welches du bei lerneprogrammieren.de schnell erhältst) innerhalb von ein paar Stunden oder Tagen Anwendungen umsetzen, für die Programmieranfänger normalerweise Monate brauchen würden.