3 Min. Lesezeit

Software Engineering im Jahr 2034

Software Engineering im Jahr 2034

Wie sieht der Arbeitsalltag eines Entwicklers im Jahr 2034 aus, welche Umgebungen, Werkzeuge und Praktiken zur Erstellung, zum Testen, zum Deployen und zum Betreiben von Software werden genutzt? Welche Arten von Softwaresystemen werden allgegenwärtig sein? Welche Systeme werden wir bei der Arbeit nutzen und auf welchen Architekturen und Technologien werden diese Systeme basieren? Kevlin wirft einen Blick in die Zukunft und spricht über mögliche Entwicklungen in der Softwareentwicklung, die Auswirkungen der Digitalisierung, die Rolle von KI, den Einfluss von Trends wie Kryptowährung, Web3 und dem Metaverse und neue Trends in Softwarearchitektur, Programmiersprachen und Arbeitskultur.

“The most widely used programming paradigm: the spread sheet. what we know from the spread sheet is, that most people, that uses spread sheets, do not have a software development background. We also know that all spread sheets are unmaintainable, incomprehensible and buggy” – Kevlin Henney

Kevlin Henney ist ein unabhängiger Berater, Redner, Schriftsteller und Trainer, der zur aktuellen Entwicklung von Programmierungstechniken, Softwarearchitektur und Unit-Testing beigetragen hat. Er hat als Kolumnist für zahlreiche Magazine und Websites gearbeitet und war Mitglied in vielen Ausschüssen. Außerdem ist er Mitautor von „A Pattern Language for Distributed Computing“ und „On Patterns and Pattern Languages“ aus der Serie „Pattern-Oriented Software Architecture“, sowie Herausgeber von „97 Things Every Programmer Should Know“ und Mitherausgeber von „97 Things Every Java Programmer Should Know“.

Highlights in dieser Episode:

  • Kevlin Henney und ich diskutierten die Zukunft der Softwareentwicklung, insbesondere mit Blick auf 2034
  • KI wird in Zukunft nicht alles machen, und Softwareentwickler werden weiterhin benötigt
  • Programmiersprachen, die heute beliebt sind, werden größtenteils so bleiben, wobei die Mehrheit im 20. Jahrhundert entwickelt wurde
  • Die tatsächliche Veränderung in der Softwareentwicklung im nächsten Jahrzehnt wird wahrscheinlich weniger dramatisch sein, als einige Leute erwarten
  • Agile Entwicklung ist zwar dem Namen nach verbreitet, aber die Praxis selbst wird nicht weitgehend angenommen
  • Die Rolle der KI in der Softwareentwicklung ist ungewiss, mit noch zu adressierenden rechtlichen und ethischen Fragen
  • Die Notwendigkeit für Softwareentwickler, präzise Fähigkeiten zu haben, wie z.B. Testen und die richtigen Fragen zu stellen, wird zunehmend wichtig
  • Die Welt läuft auf Software, und das wird sich nicht ändern, was Job-Sicherheit für Softwareentwickler bedeutet
  • Die Zusammenarbeit innerhalb von Teams und Organisationen wird weiterhin entscheidend sein, mit einem Fokus auf die Reduzierung der Kommunikationsdistanz
  • Entwickler sollten sich auf grundlegende Fähigkeiten und Prinzipien konzentrieren, die den Test der Zeit bestanden haben, während sie auch ein Auge auf neue Werkzeuge und Sprachen haben

KI, Agilität, Programmiersprachen- Entwicklungen im nächsten Jahrzehnt

Heute spreche ich mit Kevlin Henney über mögliche Entwicklungen, die der Softwareentwicklung bis 2034 bevorstehen. Kevlin Blick in die Kristallkugel offenbart eine subtile Mischung aus erwarteten Entwicklungen und überraschenden Konstanten.

Programmiersprachen

Kevlin betont einen faszinierenden Trend: Trotz rasanter technologischer Fortschritte verwenden die meisten Entwickler immer noch Programmiersprachen, die im 20. Jahrhundert entwickelt wurden. Dies deutet auf ein langsamer als erwartetes evolutionäres Tempo hin und unterstreicht die Vorstellung, dass die Beherrschung der derzeitigen Mainstream-Sprachen noch lange relevant bleiben könnte.

Das Agile Missverständnis und die Realität

Agile Entwicklung ist zu einem Schlagwort geworden, das mit modernen Softwarepraktiken gleichgesetzt wird. Kevlin deutet jedoch an, dass ihre wahre Annahme weniger verbreitet ist, als man annehmen könnte. Mit Blick auf 2034 scheint es, dass bestimmte Praktiken verbreiteter werden könnten, die Kernprinzipien der agilen Methodik jedoch immer noch um eine echte Implementierung ringen könnten.

Hype vs. Praktikabilität: Technologien im Blick

Von Metaverse-Träumen bis zu Kryptowährungsblasen und der anhaltenden Unklarheit von Web3 hinterfragt Kevlin kritisch verschiedene Technologietrends. Während er deren jeweilige Nischen anerkennt, projiziert er eine gemäßigte Aussicht auf ihren Einfluss bis 2034 und deutet an, dass einige gehypte Innovationen ihre versprochenen revolutionären Rollen möglicherweise nicht aufrechterhalten können.

KI: Das zweischneidige Schwert

Die Diskussion lenkt unweigerlich zum Thema künstliche Intelligenz – ein Thema, das sowohl Neugier als auch Skepsis hervorruft. Kevlin bietet eine differenzierte Sicht auf die mögliche Entwicklung der KI: eine Zukunft, in der KI die Softwareentwicklung verändert, aber nicht den menschlichen Erfindungsreichtum ersetzt, weil der ständige Bedarf an menschlicher Genauigkeit und ethischer Kontrolle bestehen bleibt.

Das Werkzeugset des zukünftigen Entwicklers

Beim Blick in die Zukunft der Softwareentwicklung erhalten Entwickler zeitlose Ratschläge: Priorisiere grundlegende Fähigkeiten und Prinzipien über flüchtige Trends. Kevlin empfiehlt, sich auf Testfähigkeiten, präzise Kommunikation durch Code und natürliche Sprache gleichermaßen zu konzentrieren und ein Auge auf aufkommende Werkzeuge zu haben, ohne bewährte Methodologien aus den Augen zu verlieren.

Kultivierung von Zusammenarbeit und Qualität in Softwareteams

Zum Schluss besprechen wir einen weiteren entscheidenden Aspekt an, der die Zukunft der Technologiearbeitsplätze formt: Zusammenarbeit. Mit unterschiedlichen Ansätzen in großen und kleinen Organisationen hebt Kevlin den kritischen Bedarf hervor, kommunikative Lücken innerhalb von Teams zu verringern, um wahre Agilität und Qualität zu fördern – Prinzipien, die entscheidend bleiben dürften, während wir auf 2034 zusteuern.

Secure by Design

Secure by Design 

Wie kann man Sicherheitsprinzipien frühzeitig in den Entwicklungsprozess einbeziehen, anstatt sie erst hinterher irgendwie reinzubasteln?. Eoin...

Weiterlesen
Properties Based Testing

Properties Based Testing

Properties based testing ist eine Methode, die konstante Ausgabeeigenschaften überprüft und traditionelle Teststrategien ergänzt. Diese Technik...

Weiterlesen
ISTQB in der Praxis bei Bucher und Suter

ISTQB in der Praxis bei Bucher und Suter

Alex Meister hat in seiner Firma Bucher & Suter AG die Software-Qualitätssicherung aufgebaut und gestaltet. Das war ein spannender Weg, ist Alex doch...

Weiterlesen