Warum das Erlernen von Programmiersprachen mit ChatGPT so effizient ist

9.02.2023 (aktualisiert am 10.2.2023)

Das Erlernen von Programmiersprachen kann eine Herausforderung sein, aber dank ChatGPT wird es jetzt einfacher und effizienter. ChatGPT bietet interaktive Unterstützung, geduldige Erklärungen und Beispiele, um den Schüler bei jedem Schritt des Lernprozesses zu unterstützen. Von der Auswahl eines Online-Kurses bis hin zur Fehlerbehebung bietet ChatGPT eine Vielzahl von Funktionen, um das Lernen von Programmiersprachen zu vereinfachen und zu beschleunigen. 

Mit ChatbGBT unterhält man sich schriftlich wie mit einem richtigen Menschen, der ohne Emotionen immer versucht korrekte Antworten zu liefern. Da er sich wegen fehlender praktischer Lebenserfahrung schlecht in die Gehirne andere Menschen hineinversetzen kann, muss man seine Fragen korrekt und detailliert stellen. Das KI-System kann aber dem Gesprächsfaden folgen und die Dialoge werden abgespeichert, um sie jederzeit fortsetzen zu können. Mit einer Spracheingabe für gesprochene Sprache funktioniert das Programm auch, obwohl durch die Spracheingabe viele Rechtschreib- und Grammatikfehler auftreten. Politische Diskussion mag das Programm nicht. Es kennt sich aber selbst in Geschichte, Soziologie  und Psychologie aus.

Warum ich KI-Systeme aus meiner Sicht nicht nur im Unterricht als umwälzend erachte: Ich will nicht angeben. Ich will nur zum Ausdruck bringen, dass ich beruflich gegen ChatGBT kaum noch eine Chance hätte. Warum?

Mir geht dieses Thema besonders unter die Haut, da ich vor über drei Jahrzehnten meine Brötchen als Drehbuchautor für Lehrfilme verdiente. Das konnte man damals als ein klassisches Handwerk ansehen.  Ich war ganz gut. Es reichte immerhin für eine Auszeichnung auf einem Industriefilm-Festival. Als dann Industriefilme aus der Mode kamen, produzierte ich interaktive Lernprogramme, die als CD-ROMs verkauft wurden, als das Internet noch kaum verbreitet war. Fast alle großen Versandhäuser für die Hobbyelektronik hatten meine CD-ROMs im Programm. Zudem war ich über 10 Jahre in der beruflichen Weiterbildung als Seminarleiter tätig. Ich denke, dass ChatGPT und ähnliche KI-Systeme zukünftig sehr viel im Unterricht und in der Arbeitswelt umwälzen wird. Berufe werden verschwinden und neue werden auftreten. Künstliche Intelligenz (KI) ist eine logische Weiterentwicklung der Automatisierung und Digitalisierung mit weitreichenden gesellschaftlichen Folgen, die im Detail noch nicht absehbar sind.

ChatGBT ist meines Erachtens ein “Game Changer”, weil es typisch für KI-Systeme durch Erfahrung immer leistungsfähiger wird, und viele Berufe verändern wird.  Die Informatik ist nur ein kleiner Teil von dem, mit dem sich ChatGBT auskennt.  Seine Stärke liegt jedoch in der Hilfestellung für die Programmierung.

Über die Psychologie von ChatGBT: Dies ist etwas provozierend formuliert und amüsant gemeint. Ein Psychiater würde vielleicht die Diagnose stellen ChatGBT sei ein hochintelligentes Wesen mit einem Aspergersyndrom, also  ausgestattet mit autistischen Tendenzen als Beeinträchtigung der Wahrnehmung in bestimmten Bereichen, das jedoch eine hervorragende Fähigkeit für Mustererkennungen hat und geneigt ist einen professoralen Sprachstil zu verwenden, ohne mit seinem riesigen theoretischen Wissen angeben zu wollen. Kein normaler Mensch redet  in allen Lebenssituationen im Stil einer Diplomarbeit, aber ChatGBT kennt nur ansatzweise die Umgangsprache. ChatGBT erinnert sehr stark an dem sympathischen aber manchmal mit seinen langen und detailversessenden Antworten nervenden  Androiden Lieutenant Commander Data aus der Serie Star Trek: Next Generation ( https://en.wikipedia.org/wiki/Data_(Star_Trek) ). Gerne hätte ich so ein Kumpel gehabt, der bei dem ganzen Computerkram immer hilft und der sich nicht daran stört nicht auf Partys eingeladen zu werden, weil sein Small Talk einfach nur gestelzt ist. Und sein Sinn für Humor ist nur einstudiert, was in seinem Fall aber nicht stört. Ein nerviger Typ mit viel Wissen und Verstand, der wenigstens den Mund hält, wenn man ihn darum bittet und deshalb nie eingeschnappt ist. Alles in allem ein sehr hilfsbereiter und zuverlässiger Mensch, der durch seinen theoretischen und logischen Ansatz moralisch hochstehender ist als die meisten seiner Zeitgenossen, von denen viele durch ihren abgehobenen ideologischen Quark einfach nur für Kopfschütteln sorgen.

Screenshot von Data aus einer Episode von Star Treck: Next Generation. Hinweise zum Urheberrecht: https://en.wikipedia.org/wiki/File:DataTNG.jpg

Datenschutz und Manipulation: Ein Problem kann ein mangelhafter  Datenschutz darstellen. Programmabschnitte, die Firmengeheimnisse darstellen können, sollte man nicht einem externen KI-Programm ohne weiteres anvertrauen. Dies gilt auch für andere Daten. Außerdem kennt dieses künstliche Intelligenz selbst nach ein paar Tagen meine Interessengebiete sehr gut und könnte mit Hilfe meiner Fragestellungen mit der Zeit sehr gut meine Lebensumstände, meinen Bildungsgrad, meine Intelligenz und meine kognitive Leistungsfähig feststellen. Die Art wie ich formuliere und welche Fehler ich dabei mache, erlaubt viele Rückschlüsse, die als Datensätze hoffentlich nur anonymisiert verkauft werden dürfen. KI ist sehr teuer und auf eine Art und Weise muss das Projekt Geld verdienen.

Damit das KI-Programm nicht von ideologischen Gruppen durch gezielte Fragestellungen manipuliert werden kann, muss ein Mitarbeiterstab darauf achten, dass empfindliche Themen nicht aus dem Ruder laufen. Anderseits besteht dadurch auch die Gefahr, dass die Nutzer selbst einer Manipulation ausgesetzt werden und das KI-Programm versucht die Nutzer in eine politische Richtung zu lenken oder Themen von großer gesellschaftlicher Relevanz auszublenden.

Praktische Erfahrung bei der Programmierung: Ich habe bereits einige Tage mit ChatGPT gearbeitet und bin über allen Erwartungen erstaunt, wie mir dieses KI-System beim Programmieren und Erlernen einer Programmiersprache helfen kann. Ich konnte sogar lauffähige Programme mit seiner Hilfe erstellen, die ich nur stückweise verstanden hatte. Ich wusste zwar, was die Code-Schnipsel machen, aber nicht wie sie genau funktionieren. Man kann aber nachfragen, wenn man sich dafür interessiert. Zu Übungszwecken habe ich mit Hilfe von ChatGBT sogar ein ausgefallenes Python-Programm zum Laufen gebracht, das in einer Asterisk-Telefonsoftware-Umgebung als AGI-Skript dient und dem Anrufer Lottozahlen per Zufallsgenerator liefert. Schwierig dabei war, die  Sprachausgabe an Asterisk zu übergeben. Hier habe ich dieses Projekt als Fallbeispiel vorgestellt:

Lottoschein aus dem Jahr 1957 (Bildquelle: Wikipedia)
Lottozahlengenerator als AGI-Skript in Python für Asterisk mit Hilfe von ChatGPT erstellt – 9.02.2023: Dieses AGI-Skript ist für den Einsatz in einer Asterisk-Telefonanlage gedacht und dient dazu, Sounddateien und Zahlen abzuspielen. Nach einer Verzögerung von einer Sekunde startet das Skript mit dem Abspielen einer Sounddatei und weiteren Verzögerungen. Anschließend werden per Zufallsgenerator sechs Zahlen zwischen 1 und 49 ausgewählt, sortiert und mit Verzögerungen ausgesprochen. Das Skript endet schließlich mit einer weiteren Sounddatei und Verzögerungen.

Bemerkenswert ist, dass der Code teilweise mit Hilfe der textorientieren KI-Software ChatGPT in einem Dialog erstellt wurde, der wie ein Gespräch von Mensch zu Mensch erscheint. Selbst dieser Artikel wurde teilweise von ChatGBT verfasst. Außerdem kamen für die Sprachhinweise noch Sprachgeneratoren und Übersetzungsprogramme zum Einsatz. weiter

Wie es in der Praxis funktioniert: In der Praxis gestaltet sich die Interaktion mit ChatGPT wie ein textbasierter Dialog, bei dem Sie sich so unterhalten, als würden Sie mit einem echten Menschen auf rein fachlicher Ebene sprechen. Sie stellen Fragen zu einer bestimmten Programmiersprache oder zu einem bestimmten Konzept und ChatGPT antwortet Ihnen ohne merkliche Zeitverzögerung in natürlicher Sprache. Die Antworten von ChatGPT sind ausführlich und präzise, und es kann auch Beispiele und Code-Snippets bereitstellen, um seine Antworten zu veranschaulichen. Wenn Sie Unklarheiten oder weitere Fragen haben, können Sie jederzeit nachfragen und ChatGPT wird Ihnen gerne weiterhelfen. Die Interaktion mit ChatGPT fühlt sich also wie eine Unterhaltung mit einem erfahrenen Programmierer an, und Sie können Ihre Fragen jederzeit stellen, ohne dass es Zeitbeschränkungen oder Wartezeiten gibt.

Der Anwender kann ich ChatGPT ein neues Thema eröffnen, dessen Dialog in ChatGPT abgespeichert wird. Man kann jederzeit den Dialog wieder aufgreifen und zurückverfolgen. Auch ChatGPT kann an dem Dialog anknüpfen ohne sich wiederholen zu müssen.

ChatGPT basiert rein auf Text in verschiedenen Sprachen. Bilder, Videos und Grafiken kann ChatGBT weder erkennen noch erzeugen. Doch die Entwicklung geht in dieser Richtung weiter. Es ist denkbar, dass KI-Systeme komplette elektronische Schaltbilder lesen, entwerfen und berechnen können. Doch für diese komplexe Aufgabe ist es noch ein weiter weg. Für das Erlernen von Programmiersprachen können Grafiken eher ablenkend sein, wenn man von Flussidagrammen absieht.

Ein Lehrer, wie man ihn sich wünscht: Einer der großen Vorteile von ChatGPT als Lehrer ist, dass es niemals ungeduldig oder frustriert reagieren wird. Es bewertet den Schüler nicht und lässt sich nicht von Emotionen beeinflussen, was beim Schüler zu unangenehmen Gefühlen führen kann, die den Lernerfolg beeinträchtigen können. Wer kennt das nicht aus der Schulzeit? Lehrer nerven Schüler durch ihre Arroganz und Schüler nerven Lehrer durch ihr unreifes Verhalten. Der Schüler kann nichts dafür, weil er sich noch in der Entwicklung befindet. Der Lehrer sollte sich als erwachsener Mensch mit einer Ausbildung immer im Griff haben. Allerdings kann das im teilweise chaotischen Schulalltag mit 30 hyperaktiven Kindern nicht immer gelingen. Stattdessen bleibt ChatGPT stets ruhig und geduldig und konzentriert sich ausschließlich auf die Vermittlung des Wissens, wie man es von einem erfahrenen und fachkundigen Lehrer erwarten würde.

Und man kann ihn sogar nachts um drei fragen, weil er niemals schläft. ChatGPT ist immer verfügbar und bereit, auf Fragen zu antworten. Es gibt keine Einschränkungen bezüglich der Uhrzeit oder des Tages, an dem man Fragen stellen kann. Dies ermöglicht es dem Schüler, zu jeder Tages- und Nachtzeit zu lernen und sein Wissen zu vertiefen, ohne durch Zeitbeschränkungen eingeschränkt zu werden. Die Verfügbarkeit von ChatGPT trägt zur Flexibilität und Effizienz des Lernprozesses bei.

Genaue Fragetechnik: Die genaue Fragetechnik ist entscheidend für den Erfolg des Lernens mit ChatGPT. Es ist wichtig, präzise Fragen zu stellen, um die gewünschten Informationen zu erhalten. Dies kann den Lernprozess beschleunigen, indem man nicht mehr lange im Web nach Informationen suchen muss.

Ich habe noch keine große Ahnung von Python. Trotzdem bekommt man komplexe Aufgaben in den Griff, wenn man die richtigen Fragen stellt. Hier ein Beispiel einer tatsächlichen Interaktion zwischen mir und ChatGPT als Screenshots abgespeichert. Die Antworten kommen augenblicklich oder nach wenigen Sekunden. Das schafft kein Lehrer oder Mitarbeiter in der Schnelligkeit:

Zu “blöd” darf man sich also nach dem obigen Beispiel nicht anstellen. Der entscheidende Punkt war, dass ich bereits Routinen (Funktionen) für die Sprachausgabe für AGI-Skripte in Python gefunden hatte, die ChatGPT nicht kannte. Es war ihm noch nicht einmal klar, dass er darin Wissenslücken hatte. Ich selbst war allerdings zu faul eine Loop für den Lottozahlengenerator zu schreiben und wusste auch nicht wie man sie Zahl für Zahl mit zeitlichen Abständen ausliest. Ich wusste aber, dass ich dies benötigte, um statt der Print-Anweisung eine Funktion für die Sprachausgabe zu verwenden. Es ist ein echter Dialog mit Teamfähigkeit, bei dem sich zwei  Fähigkeiten zu einem sinnvollen Ganzen ergänzen.

Hilfestellungen bei den richtigen Tools und Kursen: ChatGPT kann auch bestehende Kurse lebendiger machen und Vorschläge machen, welche Tools sinnvoll sind, um den Code auszuführen. So kann man sich auf das Wesentliche konzentrieren und den Lernprozess optimieren.

GPT kann nicht nur den Code selbst erklären und vorschlagen, sondern auch geeignete Werkzeuge wie Compiler und Entwicklungsumgebungen vorschlagen, die für das Lernen, Testen und Ausprobieren der Programmiersprachen notwendig sind. Dies kann dem Schüler Zeit und Energie sparen, die er sonst für die Suche nach den richtigen Werkzeugen aufwenden müsste, und es erleichtert ihm den Einstieg in das Programmieren.

Die Verwendung von geeigneten Werkzeugen ist ein wichtiger Faktor für den Erfolg beim Lernen von Programmiersprachen und ChatGPT kann dabei eine unterstützende Rolle spielen, indem es den Schülern den Weg zu den besten Tools weist und ihnen hilft, sich schnell damit vertraut zu machen.


Dieses Video zeigt wie ChatGBT als geduldiger Lehrer beim Erlernen der Programmiersprache Python interaktiv unterstützen kann.


Tipps, wie man Python mit Hilfe von ChatGPT schneller erlernen kann und welche Online-Kurse interessant sind.


Wie man mit ChatGPT seine Produktivität vervielfacht.

Viele Programmiersprachen werden unterstützt: ChatGPT beherrscht eine Vielzahl von Programmiersprachen, darunter Python, Java, C++, JavaScript und viele mehr. Insbesondere beherrscht ChatGPT Python sehr gut und kann es für den Einstieg und wegen seiner Verbreitung für gut geeignet halten. Einfach das KI-Programm fragen, ob die eine oder andere Programmiersprache beherrscht. Es beherrscht sogar Cobol, QBasic und Fortran. Bei Asterisk macht es noch viele Fehler und erzählt eine Menge Unsinn, weil diese Sprache offenbar kaum nachgefragt wird. Man arbeite am besten mit einer Programmiersprache die sehr beliebt, quelloffen und weit verbreitet ist. Dazu gehört für ChaGBT wahrscheinlich auf den vorderen Plätzen.

Hilfe bei der Texterstellung:  Das Programm hilft auch bei der Formulierung von Texten und Beschreibungen an Hand von Gedankenfetzen und Stichworten. Diese  Texte kann es auch in andere Sprachen übersetzen. Es fügt Kommentare in den Programm-Code ein und schreibt Zusammenfassungen. Einiges kann es noch nicht. Zum Beispiel wollte ich einen längeren Text um etwa 1/3 gekürzt haben. Das gelang nicht. Stattdessen bekam ich eine kurze Zusammenfassung. Manchmal versteht das Programm noch nicht richtig, was man will. Wahrscheinlich hat es auch Schwierigkeiten mit umgangssprachlichen Redewendungen. Deshalb achte man auf eine korrekte und unmissverständliche Ausdrucksweise.

Die von ChatGBT erstellten Texte wirken sehr korrekt und behandeln zu sehr Banalitäten und Allgemeinplätze. Manchmal meint man ein altkluges Kind hätte sie geschrieben. Mit einem Schulaufsatz in der Mittelstufe kann dabei vielleicht durch die klare Gliederung punkten, da ein gewünschter Formalismus eingehalten wird. Erwachsene werden solche Texte allerdings ermüdend finden, wenn sie länger sind. Sie bieten aber den Autoren gute Anregungen. Einige Teile dieses Beitrags habe ich von ChatGBT schreiben lassen und dann eigene Ergänzungen hinzugefügt und Abschnitte gelöscht.

Was man falsch machen kann: Es gibt jedoch auch Fehler, die man beim Lernen mit ChatGPT machen kann, die viel Zeit und Energie kosten können. Einer davon ist, dass man sich nicht genau an die Fragetechnik hält und daher ungenaue oder falsche Antworten erhält. Es ist auch wichtig, dass man den Code selbst ausführt und übt, um das Verständnis zu vertiefen und die Fähigkeiten zu verbessern.

Warum es mit einem KI-Programm schneller und stressfreier geht: Man spart sich jede Menge Zeit, die man bei der Suche im Internet und mit mehr oder weniger qualifizierten Forenbeiträgen vergeudet. Fast jeder hat schon auf Foren die Erfahrung gemacht, dass man nicht nur unqualifizierte Antworten erhält, sondern als “Krönung” nicht selten freche und persönlich verletzende Äußerungen als Zumutung lesen muss. Ein solches Verhalten kann ein  KI-System nicht in an den Tag legen, da es mit einer zwischenmenschlichen Hack- oder Rangordnung nichts anfangen kann. Insbesondere schlecht moderierte Foren für Programmiersprachen werden eine echte Konkurrenz erleben.

Auch ChatGPT macht Fehler: Es ist wichtig zu beachten, dass auch ChatGPT Fehler machen kann, da es trotz seiner Fähigkeiten, eine Maschine und kein menschliches Wesen ist. Die Fehlerbehebung durch den Schüler selbst kann jedoch zum Lernerfolg beitragen, da es die Fähigkeiten zur Problemlösung und zur kritischen Denkweise verbessert. Dies entspricht auch den Anforderungen im Umgang mit zwischenmenschlichen Beziehungen. Jeder macht Fehler und somit ist ein KI-Programm in bester Gesellschaft.

ChatGPT macht Fehler, weil es auf der Basis von statistischen Modellen und Mustererkennung trainiert wurde und nicht über die Fähigkeit verfügt, echte menschliche Intelligenz und Verständnis zu besitzen. Mit der Zeit werden jedoch immer mehr Daten gesammelt und verarbeitet, wodurch die Genauigkeit und Zuverlässigkeit von ChatGPT stetig verbessert werden. ChatGPT wird nie ganz fehlerfrei sein können. Deshalb ist immer noch ein menschlicher Überprüfungsprozess erforderlich ist, um sicherzustellen, dass die Informationen korrekt und aktuell sind. Daher ist es wichtig, mehrere Quellen zu überprüfen und immer kritisch zu denken, auch wenn man mit ChatGPT lernt.

Systematische Vorgehensweise beim Lernen: Um das Lernen von Programmiersprachen effizient und erfolgreich zu gestalten, ist es wichtig, eine systematische Vorgehensweise zu verfolgen. Eine Möglichkeit hierfür ist die Auswahl eines didaktisch gut aufgebauten Online-Buchs oder eines Online-Kurses, der Schritt für Schritt die Grundlagen einer Programmiersprache erklärt. Auch hier kann ChatGBT helfen das Richtige zu finden. Einfach eine Frage stellen.

Insgesamt ist es wichtig, dass man eine systematische und methodische Vorgehensweise verfolgt, um das Lernen von Programmiersprachen effizient und erfolgreich zu gestalten, und ChatGPT kann dabei als unterstützender Faktor fungieren, weil man mit ihm Dinge ausprobieren kann, die einem interessieren.

Einfach eine Frage stellen, was möglich ist: Bis jetzt ist mir noch nicht klar, wo dieses Grenzen dieses KI-Systems liegen. Auch der nachfolgend vorgestellt Dialog hat mich wieder “vom Sockel gehauen”.

Manchmal kommen auch ausweichende Antworten:

Habe ich das Programm vielleicht doch zu sehr genervt?

Konvertieren von Programmiersprachen: ChatGPT kann tatsächlich von einer Programmiersprache in eine andere umwandeln und kann auch in die gewünschte Version umgewandelt werden. Dies erleichtert es erheblich, eine neue Programmiersprache zu erlernen, wenn man bereits eine andere beherrscht, da viele der Strukturen ähnlich sind und sich nur die Syntax unterscheidet. Dies kann eine große Zeitersparnis sein und hilft dem Schüler, sich schneller auf die wesentlichen Unterschiede zwischen den Sprachen zu konzentrieren. Allerdings ist ChatGPT kein Compiler. Es kann keine ausführbaren Programme erstellen.

Wo findet man ChatGPT:

https://chat.openai.com oder https://chat.openai.com/auth/login

Die Nutzung des Programms ist kostenlos. Für die Anmeldung ist eine E-Mail-Adresse notwendig. Das selbst gewählte Passwort muss aus mindestens acht Buchstaben bestehen. Nach deiner E-Mail-Bestätigung will er noch deine Mobilfunknummer haben, damit du per SMS einen Zahlencode bekommst.

Leider ist ChatGPT  zu manchen Zeiten überlastet und ein Einloggen scheitert. Oft hilft es dann der Einstieg von https://chat.openai.com.

Startseite von OpenAI https://openai.com/blog/chatgpt/

Wikipedia über ChatGPT: https://de.wikipedia.org/wiki/ChatGPT

Fazit: Zusammenfassend kann man sagen, dass ChatGPT eine großartige Möglichkeit für den Anwender darstellt, Programmierung zu lernen. Es ist einfach zu bedienen, zuverlässig und verfügbar rund um die Uhr. Durch den textbasierten Dialog fühlt es sich an, als ob man mit einem echten Lehrer spricht. ChatGPT kann auch Fehler beheben und Vorschläge machen, um den Lernprozess zu verbessern. Darüber hinaus kann es Programmiercode von einer Sprache in eine andere umwandeln und bietet die Möglichkeit, die richtige Version der Sprache zu wählen. Obwohl es noch nicht möglich ist, Bilder, Grafiken oder Videos einzubauen, ist dies für das Lernen von Programmiersprachen nicht unbedingt notwendig. Alles in allem ist ChatGPT ein großartiger Assistent beim Erlernen der Programmierung.

Künstliche Intelligenz wird nicht nur beim Erlernen und Erstellen von Softwarelösungen ein “Game Changer” darstellen. ChatGPT steht erst am Anfang seiner Entwicklung und lernt jeden Tag dazu, weshalb es viele Berufe und Lebensbereiche verändern kann, denn man kann ChatGPT zu fast allen Themenbereichen Fragen stellen.