ChatGPT - Die Zukunft der Software-Entwicklung?

- Welche Neuerungen künstliche Intelligenz bringt und was das für EntwicklerInnen bedeuten könnte -

Symbolbild Nutzung ChatGPT

ChatGPT macht mir Angst”. Die Nachricht eines Freundes lässt mich aufhorchen. GPT-3 kannte ich schon lange: Mit der KI, die Texte generieren kann, habe ich bereits 2021 experimentiert. Zu ChatGPT muss ich kurz recherchieren. Ein Chatbot, ebenfalls von OpenAI, unter deren Geldgebern sich auch Elon Musk und Microsoft befinden. Der Bot kann Texte - inklusive Quellcode - schreiben. Trainiert wurde er mit Textbausteinen aus dem Internet.

Ich krame meinen Account hervor und beginne den Bot zu testen. Dazu gebe ich ihm kleine Rechenaufgaben und frage Informationen ab. Die Ergebnisse sind gut. Beeindruckend gut. Und alles dauert nur wenige Sekunden.

Ich teste weiter: Was soll ich meiner Schwester zu Weihnachten schenken? Das Ergebnis ist eine Liste sinnvoller Vorschläge. Außerdem lasse ich Tweets über Nudelsuppe schreiben, die klingen, als hätte Donald Trump sie verfasst und lasse mir mathematische Formeln erklären. Ich bin fasziniert! Kennt ChatGPT auch die wunschlösung? Tut es. Und lustige Gedichte über uns kann es auch schreiben:

Kommunikation mit ChatGPT

Jetzt bin ich neugierig - kann es auch mit Code arbeiten? Ich lasse mir Python-Skripte erzeugen, die Daten aus dem Internet abfragen und kleinere Java-Funktionen. Sie funktionieren auf Anhieb ziemlich okay.

Kommunikation mit ChatGPT

Ergebnis:

Kommunikation mit ChatGPT
(The Dark Knight vor Pulp Fiction finde ich fragwürdig, aber dafür kann ChatGPT wohl nichts. Kleine Fehler: Ich hatte nur nach der Top 10 gefragt und das Erscheinungsjahr ersetzt den Rang.)

Ich gebe ChatGPT ein Stück Quellcode von uns und frage, wie ich es optimieren kann. Die Antwort ist sinnvoll. Danach baue ich einen kleinen Fehler in den Code ein und frage ChatGPT, warum er nicht funktioniert - es findet das Problem und erklärt mir, wie ich den Fehler vermeiden kann.

Machen wir es schwieriger. In unserem YouTube-Video, in dem ich die Code-Generatoren zeige, hat das Futter für die Tiere unseres hypothetischen Zoos einen Nutri-Score. Ich gebe ChatGPT die Funktion zum Speichern der Futter-Daten und bitte es, den Code so zu ergänzen, dass dabei der Nutri-Score von einer öffentlichen API abgefragt wird und im dazugehörigen Feld gespeichert wird. Den Code hätte ich händisch schöner geschrieben, aber sicher nicht so schnell.

Kommunikation mit ChatGPT

Die Resultate sind nicht perfekt, aber schon beeindruckend. Ich berichte meinen KollegInnen von den Ergebnissen. Sofort kommen Ideen auf, wie wir das Tool nutzen können. Datenbank-Aggregationen, Testfälle und Datenmodelle werden generiert. Wir sind hooked.

Es entsteht eine Diskussion, ob sich Typescript- oder Java-Code besser durch KI erzeugen lässt. ChatGPT kommentiert das auf unser Bitten mit folgendem Rap-Battle:

Kommunikation mit ChatGPT

Was macht so ein Tool mit der Branche? Wie sieht die Zukunft von Software-Entwicklern und -Entwicklerinnen aus?

Fakt ist: Stand heute funktioniert es bereits, kleinere Entwicklungsaufgaben in Teilen von ChatGPT oder ähnlichen Tools wie Github Copilot lösen zu lassen. Wir bei der wunschlösung haben begonnen zu prüfen, wie wir solche Lösungen in unsere Arbeitsabläufe integrieren können und wie wir unsere eigenen Code-Generatoren mit KI erweitern können.

Klar gibt es dabei noch jede Menge Fallstricke zu lösen. Sind die Ergebnisse urheberrechtlich verwertbar? Wie sieht es mit dem Datenschutz aus? Welche Geschäftsmodelle stecken künftig dahinter? Und nicht jeder generierte Code-Fetzen ist immer richtig. Deswegen hat Stack Overflow erst kürzlich das Tool vorerst zum Lösen von Code-Anfragen gebannt.

Aber angenommen, diese Themen sind lösbar - macht das menschliche Software-EntwicklerInnen langfristig überflüssig? Grund zur Panik gibt es meiner Meinung nach noch nicht. Die beste Software nützt nichts ohne Menschen, die sie einzusetzen wissen. Sicher ist aber, dass Code-Generatoren zur Zukunft der Software-Entwicklung gehören und KI-basierte Lösungen dabei eine herausragende Rolle spielen werden. Die Automation der Entwicklung durch intelligente Editoren und andere Tools wird nicht aufzuhalten sein. Noch ist KI-generierter Code auf Fragmente überschaubarer Länge begrenzt. Für mehr wird es in der nächsten Zeit wohl noch die Entwürfe und Architekturen von Menschen benötigen.

Plausibler ist, dass zunächst einfache Routinethemen automatisiert werden. Für EntwicklerInnen ist das auch eine gute Nachricht. So bleibt mehr Zeit für spannende Probleme, architektonische Fragen oder Feinschliff an der Software. Diesen Ansatz verfolgen wir seit Jahren mit der Nutzung unserer Code-Generatoren.

Durch einen höheren Automationsgrad und damit verbundener Erwartungshaltung an die Geschwindigkeit von Softwareentwicklung wird aber langfristig auch der Effizienzdruck in der Branche insgesamt steigen. EntwicklerInnen sind sicher gut beraten, auf dem Laufenden zu bleiben und auch im Umgang mit KI-Systemen Kompetenzen aufzubauen. Wichtig ist dabei bewusstes Vorgehen, denn ein blindes Übernehmen vorgekauter Lösungen hilft nicht beim Aufbau eines tieferen Verständnisses. Auch werden Fachwissen und Problemlösungskompetenz außerhalb des Schreibens von Code zunehmend relevant sein.

Ich frage mich, wann KI-Systeme in der Lage sein werden, auch größere Systeme weitgehend eigenständig zu entwickeln. Letztlich wird das nur eine Frage der Zeit sein - und möglicherweise geht es schneller, als wir denken. Dabei können Tools die Brücke schlagen, die aus kurzen Eingaben größere Lösungen erstellen können, wie bestimmte Frameworks und Low-Code-Lösungen. Oder eben Code-Generatoren wie die der wunschlösung. In Kombination mit der Verarbeitung natürlicher Sprache werden sie langfristig viele Anwendungsfälle ohne die Zuarbeit menschlicher EntwicklerInnen lösen können.

Sicher wird es aber auch dauerhaft Themen geben, bei denen Menschen lieber mit anderen Menschen kommunizieren und zusammenarbeiten wollen. Umso wichtiger, dass auch wir EntwicklerInnen nicht nur Code schreiben können, sondern die Probleme und Wünsche unserer KundInnen und KollegInnen als mitfühlende Menschen verstehen und mit ihnen die besten Lösungen finden. Das kann KI (noch?) nicht.

Für den Moment sehe ich hier einen großen Schritt in der Entwicklung von Technologie. Die Auswirkungen von KI auf den Arbeitsalltag vieler Menschen werden gigantisch sein. Und so viele Fragen sind offen. Wie gehen wir als Gesellschaft damit um? Schafft diese Entwicklung neue Stellen oder macht es viele Berufe, die wir aktuell brauchen, redundant? Wie weit kann und soll KI in den Alltag von Menschen eingreifen? Das werden große Themen der kommenden Jahre sein.

Eine Kollegin hat heute festgestellt, dass ich ChatGPT immer ganz höflich bitte, meine Anfragen auszuführen. Das ist natürlich Kalkül - ich hoffe, die KI wird auch nett zu uns sein.

Kommunikation mit ChatGPT

    Mehr vom Blog

    Misc, Individualsoftware · 24.08.2023

    Bye bye #localgutscheining - Ein Rückblick auf unser Gutschein-Portal-Projekt im Rahmen des #JenaVsVirus-Hackathons

    Erfahrt hier mehr über #localgutscheining: wie mit unserem Projekt Jena im Corona-Lockdown zusammenrückte und lokale Unternehmen unterstützt hat.

    Marktplätze, Individualsoftware · 17.07.2023

    Der Unterschied zwischen Online-Marktplätzen, Shops, Portalen, Plattformen und Stores

    Erfahrt hier, was eigentlich genau der Unterschied zwischen Online-Marktplätzen, Shops, Portalen, Plattformen und Stores ist.

    Misc · 07.07.2023

    Wir MACHN uns auf den Weg zum Start-Up Festival 2023

    Unser Business Development Team war letzte Woche wieder unterwegs – beim MACHN Start-Up Festival für Tech, Business und Art in Leipzig. Hier gibt es Einblicke!

    Marktplätze, Individualsoftware · 19.06.2023

    Was ist ein Online-Marktplatz, und wann ist er sinnvoll?

    Erfahrt, was Online-Marktplätze sind und wann ein eigener sinnvoll ist. Wir helfen euch beim Aufbau und mit der passenden Software!

    blog.tag.Team, wunschlösung · 18.04.2023

    Teaminterview Sebastian (Projektmanagement)

    Heute im Teaminterview:
    Sebastian - Projekt-Jongleur, Überblickhaber und Agile Master

    Marktplätze, Individualsoftware · 03.04.2023

    Wie behaltet ihr die Entwicklungskosten eures Software-Projekts unter Kontrolle?

    Erfahrt, wie ihr die Entwicklungskosten eures Software-Projekts unter Kontrolle behaltet. Erhaltet Tipps zu Projekt-Setup, Priorisierung, Scoping und mehr.

    Marktplätze, Individualsoftware · 16.03.2023

    Welche Abrechnungsmodelle gibt es für Software-Projekte?

    Ihr möchtet die gängigen Abrechnungsmodelle für Software kennenlernen? Wir zeigen euch, welche Modelle existieren und geben euch Tipps zur Auswahl.

    Marktplätze, Individualsoftware · 16.02.2023

    Was kostet eigentlich Individualsoftware?

    Ihr fragt euch, was Individualsoftware kostet? Wir zeigen euch, welche Faktoren den Preis beeinflussen und geben euch hilfreiche Tipps zur Kostenreduktion.

    Misc · 07.02.2023

    Euer LinkedIn-Auftritt — noch ein bisschen eleganter

    Ihr möchtet eure Linked-In Profil-URL anpassen? Wir erklären euch, wie.

    blog.tag.Team, wunschlösung · 20.01.2023

    Teaminterview Erik (Support)

    Heute im Teaminterview:
    Erik - Supporter, Junior Sys-Admin und Hobbyfotograf

    Tech · 08.12.2022

    ChatGPT - Die Zukunft der Software-Entwicklung?

    Künstliche Intelligenz wird immer mehr Teil des Alltags. Aber wie wirken sich Textgenerierungsprogramme wie ChatGPT auf das Leben von EntwicklerInnen aus?

    blog.tag.Team, wunschlösung · 28.10.2022

    Gründerinterview mit Christian

    Heute im Interview:
    Christian - Digitalisierungs- und Innovationsbegleiter und Business-Development-Fan