Unser Jüngster ist neun (UND EIN HALBE!) VERGESSEN SIE DIE HÄLFTE NICHT!) und er ist derzeit von Robotern fasziniert. Nicht nur mit ihnen spielen, sondern sie programmieren. Da beide Eltern über einen Hochschulabschluss in Informatik verfügen, können Sie sich vorstellen, dass wir von diesem besonderen Trend begeistert sind und ihn unterstützen.
Daher sind Roboter, die leicht zu erlernende Programmiermodelle bieten, bei uns derzeit natürlich ein Thema. Eines der Spielzeuge für diesen Sommer war von Wonder Workshop , deren Roboter über eine blockähnliche Sprache programmiert werden können.
Dies ist für Kinder heute die Norm. Dieses Kind spielt auf seinen verschiedenen Geräten eine Reihe von „Spielen“, die alle dasselbe blockähnliche Modell zum Erstellen von Programmen verwenden. Sogar sein Lego Mindstorms Ev3- Roboter verwendet einen ähnlichen Mechanismus, bei dem Programmierkonstrukte aus Blöcken bestehen, die Sie miteinander verdrahten. Variablen und Bedingungen werden durch Auswahl festgelegt und es wird kein tatsächlicher „Code“ auf dem Bildschirm angezeigt.
Aber Sie wissen, dass es da ist.
Als ich damals BPM-Lösungen (Business Process Management) evaluierte, verwendeten sie ein ähnliches Paradigma, um es den Geschäftspartnern zu ermöglichen, Prozesse zu definieren. Seine Schnittstelle spiegelte die Natur der Prozesse wider, das heißt, Sie erstellten ein Flussdiagramm mithilfe eines Drag-and-Drop-Modells, aber ein Großteil der Konstruktion der Orchestrierung wurde über eine leichter zu erlernende Schnittstelle erreicht. Wie die, die mein Jüngster heute verwendet, nur mehr wie Visio. Jetzt, wo ich darüber nachdenke, ähnelt es viel mehr Visio.
Vergiss die Kinder. Dies ist die Richtung, in die die IT-Automatisierung gehen muss. Es gibt keinen Grund für die der IT-Automatisierung innewohnende Komplexität heutzutage, außer dass noch niemand erkannt hat, dass wir, wenn wir sie stärker fördern wollen – und zwar bei Leuten, die nicht von Natur aus Programmierer sind –, einen besseren Weg finden müssen, um die Arbeitsabläufe zu konstruieren, die die IT-Prozesse darstellen, die zur Bereitstellung, Verwaltung und Konfiguration der IT-Infrastruktur verwendet werden.
Als Erstes müssen wir uns darüber einig sein, dass programmatisch nicht unbedingt bedeutet: „Mit Code können Sie alles machen, was Sie wollen.“ Das stimmt im weitesten Sinne des Wortes, bedeutet aber auch die Fähigkeit, Verhalten programmgesteuert zu ändern oder zu definieren. Zum Ausführen eines Workflows in der IT ist nur eine begrenzte Anzahl von Aktionen erforderlich, und die meisten davon werden heute durch die (andere) API-Wirtschaft ermöglicht. Durch die Bereitstellung einer Schnittstelle, die diese begrenzte Anzahl von Aktionen kapselt und klare und leicht verständliche logische Konstrukte (wenn/dann, während, iterative Funktionen) bereitstellt, könnten wir scheinbar die Tendenz zu unstrukturierten Skriptmechanismen beseitigen, die weitaus mehr technische Schulden in den IT-Betrieb einbringen als die meiste Software, die in der Vergangenheit in Unternehmen entwickelt wurde. Diese Ebene der eingeschränkten Abstraktion würde es auch nicht-muttersprachlichen Programmierern (Netzwerk- und Speicheringenieuren sowie Architekten) ermöglichen, gut konstruierte Arbeitsabläufe zu erstellen, die äußerst wartungsfreundlich sind (ein wichtiger Treiber der Standardisierung). In Verbindung mit einem serverlosen Backbone zur Ausführung von Workflows reduziert dieses Modell die erforderlichen Investitionen zur Erstellung, Wartung und Ausführung von für den IT-Betrieb geeigneten Workflows.
Das ist wichtig, denn wir müssen die IT-Automatisierung mit Blick auf die Nachhaltigkeit angehen. Ein Skript funktioniert heute hervorragend, aber kann es in Zukunft zusammen mit Menschen und Prozessen skaliert werden?
Nun, vielleicht brauchen wir keine ganz so einfache (oder farbenfrohe) Lösung, aber ich denke, die Prämisse, auf der die Schnittstelle entworfen wurde, muss angepasst werden, wenn wir in die Zukunft der IT-Automatisierung blicken und uns mit der Art und Weise befassen, wie wir den Code erstellen (und warten), der die IT letztendlich zum Laufen bringt. Leider neigen wir dazu, die Komplexität der zugrunde liegenden Systeme auf die Gestaltung der Systeme (und damit der Schnittstellen) zu übertragen, die mit diesen interagieren und sie steuern. Wir möchten jeden möglichen Knopf und jede Taste freilegen. Zumindest wäre ein API-Broker, der es ermöglicht, die natürliche Komplexität der aus CLIs und APIs resultierenden Aufgaben in verständlichere Betriebsaufgaben umzuwandeln, ein Segen für alle, die mit der Automatisierung von IT-Netzwerken und App-Diensten beauftragt sind. Die Anmeldung kann ein komplexer Vorgang sein, der aus mehreren Schritten besteht, die jedes Mal wiederholt werden müssen. Durch die Zusammenfassung in einem einzigen „Dienst“ werden sie nicht nur konsistent, sondern auch wiederholbar und wesentlich besser überprüfbar. Kombinieren Sie das mit einer (intuitiveren) Benutzeroberfläche und wir haben einen Gewinner der IT-Automatisierung.
Die Schnittstellen für moderne „Programmier“-Apps für Kinder beweisen, dass dies möglich ist, ohne dass die Benutzer das Gefühl haben, auf einen ENIAC zu starren und kein Handbuch zur Hand zu haben. Wir können es besser machen, und wenn wir die interne digitale Transformation so skalieren wollen, dass sie mit dem Geschäft Schritt hält, müssen wir das tun.