Randthemen aus dem ThoughtWorks Technology Radar Makrotrends in der Technologiebranche 2020

Autor / Redakteur: Mike Mason * / Stephan Augsten

Bei der Erstellung des Technology Radars führen wir auch immer wieder interessante Gespräche über zahlreiche Themen, die wir nicht aufnehmen können. Also, was tut sich gerade in der Welt der Software?

Anbieter zum Thema

Was hält das Jahr 2020 für uns bereit? ThoughtWorks hat sich einmal mehr mit Makrotrends in der IT befasst.
Was hält das Jahr 2020 für uns bereit? ThoughtWorks hat sich einmal mehr mit Makrotrends in der IT befasst.
(Bild: Robynne Hu / Unsplash)

Wettrennen um Cloud-Vorherrschaft verursacht Fehlstarts

Infrastruktur und Architekturstile sind in der Entwicklerbranche derzeit Cloud-dominiert. Die großen Service-Anbieter konkurrieren laufend um Marktanteile und wollen ihre Wettbewerber ausstechen. Dazu bringen sie Produkte und Services auf den Markt, die nach unserer Einschätzung noch gar nicht reif für eine allgemeine Nutzung sind.

Dieses Muster haben wir in der Vergangenheit auch an anderer Stelle beobachtet: Anbieter von Unternehmenssoftware bewerben ihre Produkte damit, dass sie mehr Funktionen bieten als die eines Wettbewerbers – egal, ob diese Funktionen fertig entwickelt oder schon im Produkt enthalten sind.

Das Problem an sich ist also nicht neu, in der heutigen Cloud-Landschaft wird es allerdings zu einer ganz besonderen Herausforderung. Zudem handelt es sich hier nicht um ein Versehen, sondern um eine gezielte Strategie. Die Unternehmen haben sich so aufgestellt, dass sie neue Software so schnell wie möglich veröffentlichen.

Dieses Wetteifern um neue Produkte und Services ist nicht immer zum Vorteil der Teams, die mit dem Resultat arbeiten müssen. Da Anbieter allzu große Versprechungen machen, heißt es: „Augen auf beim Softwarekauf“. Eine neue Cloud-Datenbank? Ein weiterer Service? Hier müssen die Teams ganz genau prüfen, ob die Neuheiten tatsächlich ausgereift und brauchbar sind. Kann das Team mit den unvermeidlichen Unfertigkeiten und Einschränkungen leben?

Tools und Produkte für Hybrid Clouds nehmen Gestalt an

Viele große Unternehmen nutzen Hybrid Clouds und nehmen die Dienste mehrerer Cloud-Anbieter in Anspruch. Die Entscheidung, einen oder mehrere Anbieter zu nutzen, ist komplex. Dabei sind nicht nur technologische, sondern auch wirtschaftliche, strategische und sogar rechtliche Gesichtspunkte zu berücksichtigen.

Möglicherweise müssen Unternehmen in stark regulierten Branchen gegenüber einer Behörde nachweisen, dass sie problemlos zu einem anderen Cloud-Anbieter wechseln können, falls es bei ihrem aktuellen Anbieter gravierende technische oder wirtschaftliche Probleme geben sollte. Manche unserer Kunden betreiben immensen Aufwand, um die Cloud-Nutzung auf eine einzige Plattform zu konsolidieren.

Die Beweggründe sind vielfältig: Latenzprobleme bei der Nutzung mehrerer Clouds, komplexe VPN-Setups, bessere Preisangebote oder Cloud-spezifische Funktionen, z. B. Kubernetes-Support oder Zugriff auf bestimmte Algorithmen für Machine Learning. Solche Umstellungen oder Konsolidierungen können Jahre dauern – vor allem, wenn veraltete On-Premises-Ressourcen im Spiel sind.

Unternehmen brauchen also eine bessere Lösung für Multi-Cloud-Umgebungen. Mittlerweile gibt es eine Reihe von Control-Plane-Produkten für Hybrid Clouds, die hier vielleicht Abhilfe schaffen können. Kämpfen auch Sie mit mehreren Clouds? Dann lohnt sich vielleicht ein Blick auf Google Anthos, AWS Outposts, Azure Arc und Azure Stack.

„Quantum-ready“ als mögliche Strategie für dieses Jahr

Erst kürzlich brüstete sich Google mit seinen Errungenschaften bei der sogenannten „Quantenüberlegenheit“ (Quantum Supremacy).

Das Unternehmen hat einen Quantencomputer gebaut, mit dem sich ein Algorithmus ausführen lässt, der für einen klassischen Computer nahezu unlösbar ist. In diesem speziellen Fall nutzte Google einen Quantencomputer mit 53 Qubits, um innerhalb von 200 Sekunden ein Problem zu lösen, für das ein klassischer Supercomputer 10.000 Jahre brauchen würde.

IBM widersprach dieser Behauptung: Ihr Supercomputer würde das Ergebnis innerhalb von 2,5 Tagen berechnen). Festzuhalten ist, dass Quantencomputer mehr sind als ein teures Laborspielzeug. Es gibt keine unbekannten Barrieren, die Quantencomputer daran hindern, bedeutende Probleme größeren Ausmaßes zu lösen. Der Umfang der Probleme, die sich mit wenigen Qubits lösen lassen, ist derzeit überschaubar, aber die Quanten sind definitiv auf dem Vormarsch.

Das kanadische Start-up Xanadu entwickelt nicht nur Quantenchips – wobei die Kanadier für den Quanteneffekt auf Photonen setzen und nicht, wie Google, auf Supraleiter –, sondern auch Quantensimulationen und Trainingstools. Sie räumen ein, dass die meisten Quantenalgorithmen relativ theoretisch scheinen, jedoch können mit Quantentechniken Probleme wie Monte-Carlo Simulationen, die beispielsweise im FinTech-Bereich von großer Bedeutung sind, schneller lösen.

Jetzt Newsletter abonnieren

Täglich die wichtigsten Infos zu Softwareentwicklung und DevOps

Mit Klick auf „Newsletter abonnieren“ erkläre ich mich mit der Verarbeitung und Nutzung meiner Daten gemäß Einwilligungserklärung (bitte aufklappen für Details) einverstanden und akzeptiere die Nutzungsbedingungen. Weitere Informationen finde ich in unserer Datenschutzerklärung.

Aufklappen für Details zu Ihrer Einwilligung

Wie bei vielen anderen technologischen Umwälzungen (Big Data, Blockchain, Machine Learning) ist es auch hier wichtig, sich einigermaßen mit der Technologie auszukennen und zu wissen, wie sie dem eigenen Geschäft vielleicht nützen kann. IBM, Microsoft und Google bieten Tools an, die die Simulation von Quantencomputern und manchmal den Zugriff auf echte Quantencomputer-Hardware ermöglichen.

Vielleicht ist Ihr Unternehmen (noch) nicht in der Lage, von den Beschleunigungen sehr spezieller Algorithmen zu profitieren. Aber wer weiß? Womöglich läuft der „Quantum-ready Developer“ dem bisher so begehrten „Data Scientist“ bald den Rang ab.

90 Prozent abgeschafft – 0 Prozent gespart

Veraltete Systeme verlangen der IT-Branche einiges ab. Altes lässt sich nicht immer schnell genug anpassen, ist zu teuer im Unterhalt oder schlicht zu risikoanfällig. Wenn eingerostete Systeme auf Hardware laufen, die nur noch bei eBay zu erwerben ist, kann das mit erheblichen Risiken verbunden sein. Als IT-Fachleute haben wir ständig mit Altsystemen zu tun und müssen sie letzten Endes in den Ruhestand schicken.

Ein vielversprechend klingendes Konzept für den Austausch von Altsystemen ist eine „Strangler Fig“-Anwendung, bei der nach dem Vorbild einer Würgefeige um ein Altsystem herum so viele neue und bessere Funktionen gebaut werden, dass schließlich komplett auf das Altsystem verzichtet werden kann. Dieses Konzept hat viel Aufmerksamkeit erhalten, was nicht zuletzt an dem brutal klingenden Namen liegt. Schließlich gibt es viele, die gerne mit Gewalt gegen die frustrierenden Altsysteme vorgehen würden.

Entsprechend zahlreich sind die Unterstützer einer Strategie, bei der es um das „(Er-)Würgen“ eines Altsystems geht. Problematisch wird das Ganze, wenn wir behaupten, wir würden dem Altsystem den Garaus machen, im Endeffekt aber nur zusätzliche Systeme und APIs anbauen, ohne das Altsystem tatsächlich abzuschalten. Unser Kollege Jonny LeRoy ist bekannt dafür, amüsante Namen zu finden. Er hat vorgeschlagen, eine „Nackenmassage für Altsysteme“ in die Kategorie „Hold“ einzuordnen.

Das Thema erschien uns zu komplex für den Radar, aber uns gefiel die Botschaft: Wenn wir vorhaben, ein System nach dem Strangler-Pattern abzuschaffen, dann sollten wir die Abschaffung auch wirklich durchziehen, denn ansonsten verlieren unsere ganzen Anstrengungen ihren Sinn.

* Mike Mason ist Global Head of Technology bei ThoughtWorks.

Es sieht nicht gut aus für Trunk-Based Development

Seit vielen Jahren setzen wir uns für das sogenannte Trunk-Based Development ein, weil wir es für den besten Weg halten Software zu schreiben. Hierbei checken die Entwickler mindestens einmal täglich ihre Code-Änderungen in eine von allen geteilte „Main Line“ in einem zentralen Repository ein – bei Git wird dieses „master“ genannt, bei Subversion „trunk“, woher auch der Name rührt.

Ich habe schon eine Menge Quelltextchaos gesehen und kann sagen: Mit Branches zu arbeiten ist weder kostenlos noch kostengünstig. Auch gekonntes Merging mit Tools wie Git erspart einem Team nicht die Probleme, die eine Entwicklung nach dem Muster „Continuous Isolation“ birgt. Wenn jemand auf Branches besteht, ist das häufig ein Anzeichen für tiefer liegende Probleme mit einem Team oder einer Systemarchitektur.

Diese Probleme sollten die Beteiligten aber lieber direkt lösen, anstatt den Quelltext mit Branches zu verwalten. Wenn Sie beispielsweise bestimmten Entwicklern nicht zutrauen, Quelltext direkt in Ihrem Projekt zu ändern und stattdessen Branches oder Pull-Requests für Code-Reviews verwenden, sollten Sie vielleicht zuerst einmal das Vertrauensverhältnis betrachten.

Sie sind unsicher, ob Sie eine Projektfrist einhalten können, und wollen mithilfe von Branches bestimmte Änderungen für ein Release herauspicken? Das kann nur nach hinten losgehen. Arbeiten Sie lieber an Ihren Schätzungen, der Priorisierung und dem Projektmanagement, anstatt das eigentliche Problem mit einer Praktik zur Verwaltung von Sourcecode notdürftig zu überdecken.

Leider werden Praktiken mit kurzlebigen Branches wie GitFlow immer populärer, ebenso die Nutzung von Pull-Requests für Governance-Aktivitäten wie Code Reviews. Unser ehemaliger Kollege Paul Hammant, Kopf und Betreiber von trunkbaseddevelopment.com, hat (hoffentlich widerwillig!) die kurzlebigen „Feature Branches“ als Empfehlung aufgenommen. Es stimmt uns ein wenig traurig, dass unsere Lieblingstechnik wohl das Nachsehen hat, wir hoffen aber, dass andere Teams mit ähnlichen Ansichten weiterhin die vernünftige Technik des Trunk-Based Development nutzen und weiterempfehlen.

Extended Reality (XR) wartet auf Apple

Bei der letzten Connect Conference von Facebook bestätigte Oculus, dass sie derzeit an einer Augmented-Reality-Brille arbeiten. Genaueres konnten sie aber noch nicht verkünden. Aktuellen Gerüchten zufolge wird Apple 2022 ein XR-Headset auf den Markt bringen, eine AR-Brille ist für 2023 geplant.

Wie bei vielen anderen Neuerungen, z. B. dem Smartphone und der Smartwatch, wird Apple vermutlich auch hier der Vorreiter bei der Entwicklung eines mitreißenden Erlebnisdesigns sein. Apple hat es schon immer gut verstanden, technische Fortschritte mit ausgezeichneten Benutzererlebnissen zu verbinden. Erst wenn dies gelingt, bringt Apple ein Produkt auf den Markt.

Lange mussten sämtliche App-Entwickler die Leitlinien für das Benutzerdesign von Apple lesen – vielleicht ist das sogar heute noch der Fall. Einen ähnlichen Sprung nach vorne erwarte ich, wenn Apple (endlich) in den Bereich AR einsteigt. Bis dahin wird AR eine Nischentechnologie bleiben, auch wenn uns ein paar schicke Demos und eingeschränkte Trainings zur Verfügung stehen.

Machine Learning – verstehen wir die Algorithmen wirklich?

Zu meinen Lieblingskanälen bei YouTube gehört Two Minute Papers. Der Wissenschaftler Károly Zsolnai-Fehér berichtet hier über verblüffende Fortschritte bei KI-Systemen. Kürzlich wurde darüber berichtet, wie künstliche Intelligenz (KI) eine menschliche Stimme anhand einer fünfsekündigen Aufzeichnung nachahmt, die physikalischen Grundlagen für Computerspiele erschließt (und zwar 30000-mal schneller als eine traditionelle physikalische Simulation) und Versteckspielen lernt – und dabei sogar bewusst Glitches ausnutzt.

In dem Kanal werden auf eindrucksvolle (und leicht beunruhigende) Weise die Fortschritte der schwachen KI dargestellt – meist anhand von Problemen, die sich gut in einem Video zeigen lassen. Machine Learning (ML) wird jedoch auch in vielen anderen Bereiche angewandt, z. B. bei Geschäftsentscheidungen, im medizinischen Bereich oder zur Beratung von Strafrichtern bei der Urteilsverhängung. Es ist also wichtig, dass wir wissen, wie ein KI- oder ML-System funktioniert.

Ein zentrales Problem besteht darin, dass wir zwar beschreiben können, was ein zugrunde liegender Algorithmus tut (zum Beispiel der Back-Propagation-Algorithmus, der beim Training von neuronalen Netzen Anwendung findet), aber nicht erklären können, was das Netz macht, sobald es trainiert wurde.

Im aktuellen Radar werden Tools wie What If und Techniken wie Ethical Bias Testing vorgestellt. Unserer Ansicht nach sollte die Erklärbarkeit ein zentrales Kriterium sein, wenn es um die Auswahl eines ML-Modells geht.

Mechanical Sympathy taucht wieder auf

Im Jahr 2012 enthielt unser Radar das Konzept „Mechanical Sympathy“, das auf der Arbeit des LMAX-Disruptor-Teams basierte. Damals, als viele Softwareanwendungen immer abstrakter geschrieben wurden, war Disruptor auf extrem hohe Leistung auf bestimmten Intel-Prozessoren ausgelegt. Das LMAX-Problem war nicht parallelisierbar – und somit eine hohe Leistung eines einzelnen CPU-Threads notwendig.

Nun scheint es, als feiere Mechanical Sympathy ein Comeback. Im letzten Radar nahmen wir Humio auf, ein Tool zur Aggregation von Log Dateien, das sowohl beim Aggregieren als auch beim Abfragen extrem schnell ist. In den aktuellen Radar haben wir GraalVM aufgenommen, eine leistungsstarke Virtual Machine.

Ironischerweise sind Fortschritte in der Softwarebranche zu einem Großteil darauf ausgerichtet, von Hardware loszukommen (Container, Kubernetes, Functions-as-a-Service, Cloud-Datenbanken usw.), während andere enorm von der ausführenden Hardware bestimmt werden. Es hängt wohl ganz vom Anwendungsfall ab.

Mike Mason
Mike Mason
(Bild: ThoughtWorks)

Aus Platzgründen sind hier nicht alle Trends aufgeführt, aber wer sich für Softwareentwicklung als Mannschaftssport oder den Schutz der Software-Lieferkette interessiert, kann einen Blick in den aktuellen Technology Radar werfen.

* Mike Mason ist Global Head of Technology bei ThoughtWorks.

(ID:46339624)