Generative KI hat im vergangenen Jahr die Schlagzeilen bestimmt. Kein Wunder also, dass auch 2024 ganz im Zeichen Künstlicher Intelligenz stehen wird. Markus Eisele, Developer Strategist bei Red Hat, wagt einen Ausblick darauf, wie und wo die Zukunftstechnologie Entwicklerinnen und Entwickler im kommenden Jahr begegnen und ihre Produktivität verbessern wird.
Der Blick in die Glaskugel ist immer schwierig, denn erstens kommt es oft anders und zweitens als man denkt. Dennoch braucht niemand magische Kräfte, um einen Anstieg der KI-Nutzung im Jahr 2024 vorherzusagen. Bereits in den vergangenen zwölf Monaten sind Tools wie ChatGPT und vergleichbare Lösungen zur Bild-, Video- und Texterstellung in der Mitte der Gesellschaft angekommen. In diesem Jahr werden sie auch im Arbeitsalltag von Entwicklerinnen und Administratoren weiter Fuß fassen: die Anwendungsmöglichkeiten sind vielfältig.
Was viele allerdings vergessen, ist, dass Machine-Learning-Algorithmen und KI-Tools selbst Applikationen sind, die einen Lebenszyklus durchlaufen, der dem traditioneller Software sehr ähnlich ist. Auch KI-Anwendungen müssen entwickelt, getestet, deployed, überprüft und überwacht werden – man spricht hier von MLOps. Eine Herausforderung, mit der sich die IT-Branche im kommenden Jahr also wird befassen müssen, ist die Vermählung des Software- mit dem ML-Lebenszyklus.
Das ist gar nicht so einfach, denn Machine-Learning-Applikationen sind Data-Science-Projekte, die vorrangig in Python und anderen mathematischen Programmiersprachen geschrieben werden – ein verwaltungstechnischer Horror für Entwickler, die sonst mit Java, C#, PHP oder JavaScript arbeiten. Auch für die meisten Mathematiker und Data Scientists sind diese Programmiersprachen und ihr Ökosystem böhmische Dörfer.
Plattformen wie Red Hat OpenShift Data Science schicken sich aber an, das Problem „MLOps“ mit passenden Jupyter Notebooks, Kubeflow-Deployment-Workflows und ähnlichen Tools zu lösen. Doch wie werden generative KI und Large Language Models (LLMs) das Leben von Entwicklern erleichtern und die Produktivität von Programmierern und Administratorinnen beeinflussen? Das zeigen die folgenden fünf Beispiele:
1. Quelltext auf Befehl: natürliche Sprache statt komplexer Code
Wer schon einmal generative KI verwendet hat, weiß um deren Fähigkeiten, auch komplexe Sachverhalte zu verstehen und auf Fragen passende Antworten zu liefern. Das funktioniert natürlich auch in Bezug auf Programmierung ganz wunderbar. Immer mehr Entwicklungsumgebungen werden Coding-Assistenten erhalten, die in der Lage sind, natürliche Sprache zu verarbeiten (Natural Language Processing).
Anfangs werden die digitalen Helfer noch nicht in der Lage sein, hochkomplexe Programme ohne sehr viel zusätzlichen Input autark zu schreiben, soviel ist sicher. Aber die Definition einer Java-Klasse zum Beispiel schaffen KI-Tools heute schon. Auch die Bedienung von IT-Automatisierungswerkzeugen wie Ansible könnte durch KI noch einfacher und noch intuitiver werden, und somit die Produktivität von Entwicklern erhöhen.
2. Mehr Sicherheit durch KI
Die Demokratisierung der Programmierfähigkeiten hat auch ihre Schattenseiten: Laien können moderne Chatbots heute problemlos zweckentfremden und sich von ihnen Schadsoftware schreiben lassen. Doch auch Entwicklerinnen und Entwickler werden KI-Tools im kommenden Jahr mehr und mehr für die Absicherung ihrer Anwendungen einsetzen, etwa um Schwachstellen und Sicherheitsrisiken im Source Code zu finden. Administratoren werden zudem Algorithmen und LLMs trainieren, die sich für das Pentesting der von ihnen verwalteten Systeme und betriebenen Anwendungslandschaften eignen.
3. Codeanalyse leicht gemacht
Jeder Entwickler kennt den Frust, wenn eine Anwendung nach der Erstellung Fehler ausgibt. Dann beginnt die zuweilen nervenaufreibende Fehleranalyse, die sich mitunter als Suche nach der Nadel im Heuhaufen erweist. Auch diese Arbeit wird KI in Zukunft deutlich erleichtern und somit die Produktivität erhöhen. Richtig trainiert können Large Language Models nicht nur Tippfehler und fehlende Klammern im Code aufspüren, sondern auch Logikfehler und unzureichende Anweisungen erkennen.
4. Modernisierung von Anwendungen
Je besser eine KI trainiert ist und je mehr Vergleichsdaten dem Algorithmus zur Verfügung stehen, desto anspruchsvollere Aufgaben kann sie übernehmen. Im kommenden Jahr werden Tools möglicherweise bereits so weit sein, dass sie das Domänenmodell einer monolithischen Anwendung auswerten können. Sobald das der Fall ist, wird die KI auch in der Lage sein, den Monolithen in Microservices herunterzubrechen. Das Erstellen von APIs, damit diese miteinander kommunizieren können, und sie in Container zu packen, ist dann eine eher leichte Übung für Entwicklerinnen und Entwickler: Davon profitieren insbesondere Unternehmen, die ihre Legacy-Anwendungen in eine moderne Cloud- oder Kubernetes-Infrastruktur überführen wollen.
5. Rolle rückwärts: KI erklärt dem Menschen den Code
Wenn die KI in der Lage ist, Code zu verstehen, kann sie ihn logischerweise mit einem entsprechenden Sprachmodell für den Menschen verständlich erklären. Im kommenden Jahr werden Entwickler Tools mit dieser Fähigkeit nutzen können, um beispielsweise automatisiert Dokumentationen für Anwendungen zu erstellen oder sogar Kommentare an kritischen Stellen im Quellcode von einer künstlichen Intelligenz einfügen zu lassen. Die Dokumentation und Kommentierung von Anwendungen ist seit jeher ein Painpoint für viele Entwicklerinnen und Entwickler und kostet wertvolle Zeit, die sie lieber in die Programmierung stecken würden.
Das Jahr 2024 wird also das Jahr der Künstlichen Intelligenz. Einerseits werden Entwickler auf eine Vielzahl neuer Tools zurückgreifen können, die sie mit KI-Fähigkeiten unterstützen und ihnen viel Arbeit im Alltag abnehmen. Ihre Produktivität wird dadurch messbar steigen. Gleichzeitig werden Administratoren vor der Aufgabe stehen, KI-Tools zu betreiben und deren Lebenszyklus zu managen – keine leichte Aufgabe, aber auch dafür stehen Plattformen wie Red Hat OpenShift Data Science bereits in den Startlöchern.