Die Zukunft der Softwareentwicklung sieht 2034 vermutlich vertrauter aus, als die meisten Prognosen annehmen: Programmiersprachen, die Grundlagen der Werkzeuge und der Bedarf an Präzision und Tests bleiben weitgehend gleich. Die größte Veränderung betrifft Entwickler, die sich auf KI-Codegenerierung verlassen, ohne zu verstehen, was der Code tun soll. Sie produzieren schneller Legacy-Code, und damit werden Testen und die Fähigkeit, präzise Fragen zu stellen, zu dem, was starke Entwickler auszeichnet.
Das Wichtigste in Kürze
- Wer mit generativer KI Code erzeugt, ohne ihn zu verstehen, wird zum Wartungsprogrammierer und verliert genau die kreative Arbeit, die er an seinem Beruf schätzt.
- Programmiersprachen wechseln langsamer, als die Branche annimmt: Die fünf meistgenutzten Sprachen stammen bis auf eine aus dem 20. Jahrhundert, und keine Sprache aus den 2020er Jahren steht in den Top 20.
- Die Codequalität auf GitHub sank schon Anfang 2024: mehr Code Churn und mehr duplizierter Code, der sich direkt auf KI-generierte Ausgaben zurückführen lässt.
- Was Entwickler in einem KI-getriebenen Umfeld auszeichnet, sind Präzision, Testen und die Frage, was Software eigentlich tun soll. Die Vertrautheit mit einem bestimmten Tool gehört nicht dazu.
- Programmieren in natürlicher Sprache ersetzt kein Software-Know-how: Die meisten Tabellenkalkulationen stammen von Nicht-Entwicklern und sind unwartbar, unverständlich und fehlerhaft, die vorhersehbare Folge ungenauer Spezifikation.
Zukunft der Softwareentwicklung: Sprachen ändern sich langsamer, als der Hype vermuten lässt
Die Sprachen, mit denen die meisten Entwickler 2034 arbeiten, gibt es heute schon. Ein Blick in die Daten zeigt: Die fünf meistgenutzten Sprachen sind bis auf eine im 20. Jahrhundert entstanden. Dasselbe Muster gilt für die Top 20 und die Top 50.
Kevlin Henney sagt es ohne Umschweife: Keine Sprache aus den 2020er Jahren steht auch nur in der Nähe der Spitze der Nutzungsstatistiken. Selbst Rust, an das viele denken, wenn sie sich die Zukunft der nativen Programmierung ausmalen, ist schon über zehn Jahre alt.
Die Sprache, auf die du dich in zehn Jahren verlässt, ist höchstwahrscheinlich längst erfunden und hat schon eine gewisse Verbreitung, wenn nicht in den Top 20, dann in den Top 50. Der Wechsel der Sprachen ist also ein langsamer Trend und keine Revolution. Die Sprachen entwickeln sich innerlich weiter, aber der Gesamtmix verschiebt sich kaum.
Das nächste Jahrzehnt vorhersagen: den Zyklus rückwärts drehen
Um dir 2034 vorzustellen, dreh den Zyklus rückwärts. Wenn heute 2024 ist, denk daran, wie es 2014 war, dann 2004, dann 1994. Die Übung zeigt dir zwei Dinge auf einmal: wo es echte Unterschiede gibt und wo sich fast nichts bewegt hat.
Manche gehypte Zukunft ist an diesem Test schon hängen geblieben. Web 2 setzte sich innerhalb eines Jahrzehnts durch, nachdem der Begriff geprägt war. Über Web 3 wird seit mehr als zehn Jahren geredet, passiert ist nichts, und nichts deutet darauf hin, dass es kommt.
Andere Hypes sehen ähnlich aus. Das Metaverse bleibt zersplittert und wird wohl in Nischen wie Gaming und einigen industriellen Anwendungen bleiben, statt zu einer Umgebung zu werden, in die wir im Alltag eintauchen. Die meisten Kryptowährungen werden nicht als Währung genutzt, digitales Zentralbankgeld ist allerdings eine ernst zu nehmende Ausnahme. Und 5G ist Gegenwart, keine Zukunft.
Warum Softwareentwickler trotz KI eine Zukunft haben
Softwareentwicklung wird nicht verschwinden. Diese Prognose hat Kevlin 2016 auf einer Konferenz in Polen abgegeben und seither wiederholt: Entwickler werden weiter gebraucht, weil sich das Wesen der Entwicklung nicht ändert.
Der Grund liegt darin, was Programmieren eigentlich ist. Es geht nicht darum, Syntax zusammenzusetzen. Programmieren ist das Ringen um Präzision, die Arbeit an der Frage, was du eigentlich erreichen willst.
Programmieren in natürlicher Sprache löst dieses Problem nicht. Wenn du etwas in natürlicher Sprache schlecht spezifizierst, ist das Ergebnis schlechter, als wenn du es gleich in Code geschrieben hättest. Die Brücke zwischen der weichen, flexiblen Welt menschlicher Absichten und einer Notation, die jedes Mal dasselbe Ergebnis liefert, ist die eigentliche Arbeit. Und die bleibt.
Die Tabellenkalkulation hat die No-Code-Frage längst beantwortet
Das weltweit am meisten genutzte Programmierparadigma ist die Tabellenkalkulation, und sie zeigt, was passiert, wenn Laien in großem Stil Software bauen. Die meisten Menschen, die mit Tabellenkalkulationen arbeiten, haben keinen Hintergrund in der Softwareentwicklung. Und die meisten Tabellenkalkulationen sind unwartbar, unverständlich und fehlerhaft.
Wenn die Zukunft der Software darin liegt, dass Menschen ohne Softwareexpertise Systeme bauen, ist dein Job sicher. Denn diese Ergebnisse muss jemand verstehen und reparieren. Tabellenkalkulationen haben niemanden arbeitslos gemacht. Sie haben Chancen geschaffen.
KI-Codegenerierung macht die meisten Entwickler zu Wartungsprogrammierern
Das wahrscheinliche Ergebnis generativer KI im Entwickleralltag ist mehr Legacy-Code, nur schneller produziert. Kevlin hat das im April 2023 auf Mastodon vorhergesagt und steht dazu: Die Mehrheit der Entwickler wird Legacy-Code schreiben, nur eben schneller.
Darin liegt eine Ironie. Wer das Erstbeste übernimmt, was das Tool erzeugt, ohne zu verstehen, was es tun soll, wartet am Ende Code, den jemand oder etwas anderes geschrieben hat. Damit fällt genau der Teil der Arbeit weg, der den meisten Entwicklern Spaß macht. Übrig bleibt Wartung von Code, den sie nicht durchdringen.
Wie sich generative KI auf die Codequalität auswirkt, zeigen erste Belege bereits. Eine Studie von GitClear vom Januar 2024 wies auf GitHub einen Abwärtstrend bei der Codequalität nach: mehr Code Churn, mehr duplizierter und kopierter Code, mehr Reverts von kürzlich committeter Arbeit. Wer weiß, wie Menschen die Werkzeuge nutzen, die man ihnen gibt, konnte das kommen sehen.
“Sind sie produktiver geworden? Na ja, sie machen jedenfalls mehr Commits.”
(Kevlin Henney)
Testen wird zur entscheidenden Fähigkeit
Was dich schützt, ist die Fähigkeit zu prüfen, was ein Tool liefert. Kannst du es nicht testen und weißt du nicht, was es tun soll, macht dich generierter Code automatisch zum Wartungsprogrammierer.
Um zu wissen, wie du etwas testest, musst du zuerst wissen, was es tun soll. Anforderungen und Tests bilden einen natürlichen Kreislauf. Stärke beides, in natürlicher Sprache und im Code: Wie sieht das Richtige aus, und wie sieht das Falsche aus?
Diese Fähigkeiten, also Präzision, Testen und die richtigen Fragen stellen, gab es schon immer. Mit KI im Spiel sind sie aber keine Hintergrundarbeit mehr. Sie werden zum sichtbaren Unterschied zwischen starken und schwachen Entwicklern und zwischen starken und schwachen Unternehmen.
KI ist statistisch und trägt die Verzerrungen der Vergangenheit
Ein statistischer KI-Ansatz bildet die Vergangenheit ab und sagt das wahrscheinlichste Ergebnis voraus. Randfälle und alles, was unterhalb einer Mehrheit liegt, fallen dabei unter den Tisch.
Das wiegt am schwersten, wo automatisierte Systeme über das Leben von Menschen urteilen. Das Risiko ist keine Frage technischen Könnens. Wer es als reine Technikfrage behandelt, hat nicht verstanden, wie Menschen funktionieren.
Die eigentliche Frage ist die nach Beteiligung und Wahlfreiheit. Wenn wir diese Entscheidung nicht bewusst treffen, werden Menschen benachteiligt, und zwar als direkte Folge davon, wie statistische Systeme sich verhalten. Diese Entscheidung sollte man nicht dem überlassen, der am lautesten über die Technik redet.
Zwei offene Faktoren prägen die nächsten Jahre. Der eine ist das Verhältnis zwischen KI und großen Trainingsdatenmengen, samt der ungeklärten Urheberrechtsfragen, die gerade vor Gericht verhandelt werden. Der andere ist die Gesetzgebung: ob die EU-Regeln weltweit so viel Einfluss gewinnen wie die DSGVO und ob ein internationaler Konsens entsteht oder die Länder weit auseinanderdriften.
Die Spaltung: qualitätsorientierte gegen druckgetriebene Teams
Bis 2034 wird sich die Softwareentwicklung eher aufspalten als verschwinden. Manche Unternehmen werden gelernt haben, dass es nicht das Ziel sein kann, das Falsche schneller zu erzeugen, und sie werden erfolgreich sein. Viele werden es nicht lernen.
Unternehmen, die diese Lektion verpassen, reagieren meist mit Mikromanagement und Druck. Die Kehrseite von Continuous Deployment: Der Kontrollzyklus ist von monatlich auf täglich geschrumpft, und ohne ein wirklich kooperatives Umfeld wird daraus ein ständiger Strom von Deadlines.
Für manche Teams könnte die Arbeit unangenehm werden. Der Unterschied entsteht nicht von allein. Er hängt davon ab, ob eine Organisation Qualität zum Ziel macht oder mehr Commits.
Agilität heißt, den Abstand zwischen Fachbereich und Code zu verkürzen
Die Zusammenarbeit wird besser, wenn der Kommunikationsweg zwischen den Menschen, die Software brauchen, und denen, die sie bauen, kürzer wird. Vor Jahrzehnten war dieser Abstand von Natur aus klein, weil Unternehmen ihre Individualsoftware im eigenen Haus entwickelt haben.
Heute ist das Bild gemischt. Outsourcing schafft zusätzliche Organisationsgrenzen, während kleine Firmen schon deshalb agil sind, weil sie klein sind. Immer wieder entstehen neue Firmen, die den Softwarebedarf anderer bedienen, und müssen dann selbst wieder über die Grenze hinweg arbeiten, die sie geschaffen haben.
Für große Organisationen heißt Agilität oft, die Managementebenen von vier auf drei zu reduzieren und das Fortschritt zu nennen. Der Druck, den Abstand zu verringern, ist konstant, aber er zieht gleichzeitig in beide Richtungen.
Was du jetzt lernen solltest und wie du über Werkzeuge denkst
Bau zuerst auf den Grundlagen auf, denn die bewegen sich langsam. Die Prinzipien, die tieferen Fähigkeiten und die Frage, was du eigentlich von der Software willst, überdauern jede einzelne Technologie.
Betrachte Sprachen als Portfolio und nicht als Identität. Statt “Ich bin Java-Programmierer” sag lieber “Das ist die Sprache, die ich dieses Jahr nutze”, und gib den anderen Sprachen, mit denen du ohnehin arbeitest, denselben Rang. Arbeitest du in einer der zehn meistgenutzten Sprachen, bleib dabei und beobachte die nächste Reihe dahinter, denn dort entsteht deine künftige Hauptsprache.
Werkzeuge haben ihr eigenes Tempo. Manche entwickeln sich schnell, andere kaum. Bei Kubernetes hätte man vor zehn Jahren nur fragende Blicke geerntet, während JUnit im 20. Jahrhundert entstanden ist und immer noch da ist. Viele starke Ideen entstehen im Open-Source-Umfeld, also halte dort Ausschau nach dem, was kommt.
Der Rat hat sich über die Jahre gehalten. Bleib auf dem Boden, finde die Prinzipien, die sich bewährt haben, finde heraus, welche Fähigkeiten deine sind, und such dir dann die neuen Teile aus, an denen es sich festzuhalten lohnt. Es ist eine Frage der Balance.
Häufig gestellte Fragen
Auf welche Programmiersprachen lohnt es sich, in den nächsten zehn Jahren zu setzen?
Die, die bereits im Einsatz sind. Jede Sprache in den aktuellen Top 5 wurde, mit einer Ausnahme, im 20. Jahrhundert entwickelt, und dieses Muster zieht sich durch die Top 20 und Top 50. Keine Sprache, die in den 2020er Jahren entstanden ist, rangiert ganz oben in den Nutzungsstatistiken, und selbst Rust ist schon über zehn Jahre alt. Der Sprachwechsel ist ein langsamer Trend, keine Revolution.
Wird die KI-Code-Generierung Softwareentwickler überflüssig machen?
Nein. Das Konzept der Entwicklung ändert sich nicht, denn Programmieren ist nicht das Aneinanderreihen von Syntax. Es ist die Arbeit, Präzision anzustreben und zu klären, was man eigentlich erreichen will. Jemand muss immer noch die Brücke schlagen zwischen der weichen, flexiblen menschlichen Absicht und einer Notation, die jedes Mal das gleiche Ergebnis liefert.
Können Leute ohne Software-Hintergrund mit No-Code- oder Natursprachen-Tools Systeme mit hoher Zuverlässigkeit erstellen?
Die Tabellenkalkulation gibt darauf bereits eine Antwort. Sie ist das weltweit am häufigsten genutzte Programmierparadigma, das größtenteils von Menschen ohne Entwicklungshintergrund erstellt wird, und die meisten Tabellenkalkulationen sind nicht wartbar, unverständlich und fehlerhaft. Schlecht formulierte natürliche Sprache führt zu schlechteren Ergebnissen als Code. Auf diese Weise erstellte Systeme brauchen nach wie vor Menschen, die sie verstehen und reparieren können.
Macht generative KI Entwicklungsteams tatsächlich produktiver?
Mehr Commits sind nicht gleichbedeutend mit mehr Produktivität. Eine im Januar 2024 veröffentlichte GitClear-Studie zeigte einen Abwärtsdruck auf die Qualität des Codes auf GitHub: steigende Code-Fluktuation, mehr doppelter und kopierter Code sowie mehr Rückgängigmachungen kürzlich festgeschriebener Änderungen. Das wahrscheinliche Ergebnis im Alltag ist schneller produzierter Legacy-Code, nicht bessere Software.
Wie kann ich erkennen, ob eine gehypte Technologie in zehn Jahren noch von Bedeutung sein wird?
Dreh den Zyklus um. Vergleiche die Gegenwart mit der Situation vor zehn, zwanzig und dreißig Jahren und schau dir an, wo echte Unterschiede auftraten und wo sich fast nichts verändert hat. Web 2 wurde innerhalb eines Jahrzehnts nach der Prägung des Begriffs zur Realität. Über Web 3 wird seit über einem Jahrzehnt diskutiert, ohne dass es Anzeichen dafür gibt, dass es tatsächlich kommt. Das Metaversum bleibt in Nischen wie dem Gaming-Bereich.
Welche Fähigkeiten unterscheiden gute von schlechten Entwicklern, wenn KI den Code schreibt?
Präzision, Testen und die Fähigkeit zu hinterfragen, was die Software eigentlich leisten soll. Um etwas zu testen, muss man zunächst wissen, wie das korrekte Verhalten aussieht. Damit werden Anforderungen und Tests zu einem natürlichen Zyklus, den es sowohl in natürlicher Sprache als auch im Code zu stärken gilt. Ohne das macht dich generierter Code automatisch zu einem Programmierer für die Wartung.
Warum benachteiligen statistische KI-Systeme manche Menschen?
Ein statistischer Ansatz spiegelt die Vergangenheit wider und sagt das wahrscheinlichste Ergebnis voraus; daher ignoriert er Randfälle und alles, was unter der Mehrheit liegt. Das wird ernst, wenn automatisierte Systeme Entscheidungen treffen, die das Leben von Menschen beeinflussen. Das Problem liegt nicht in der technischen Leistungsfähigkeit, sondern in der Einbeziehung und der Wahlmöglichkeit. Bleibt dies ungeregelt, werden zahlreiche Menschen als direkte Folge des Verhaltens solcher Systeme benachteiligt.
Sollte ich mich als Spezialist für eine bestimmte Programmiersprache bezeichnen?
Betrachte Sprachen eher als Portfolio denn als Identität. Anstatt zu sagen „Ich bin Java-Programmierer“, sag lieber, dass es die Sprache ist, die du dieses Jahr verwendest, und räume den anderen Sprachen, mit denen du bereits arbeitest, einen gleichwertigen Stellenwert ein. Wenn du mit einer der zehn führenden Sprachen arbeitest, nutze sie weiter und behalte die nächste Stufe im Auge, denn dort entsteht deine zukünftige Hauptsprache.


