Low Code ist auch für Entwickler: Hier kommt die nächste Programmierrevolution
In der Art und Weise, wie wir Apps erstellen und verwenden, ist ein großer Wandel im Gange, und Low-Code wird ein Schlüsselmerkmal sein.
Auch wenn moderne Tools und Dienste Entwickler produktiver machen, gibt es immer noch eine "App-Lücke". Es ist die Lücke zwischen dem Code, für den Sie die Ressourcen haben, und dem Code, den Ihre Projektbeteiligten wollen. Entwicklungsteams sind überlastet und müssen ihre Arbeit priorisieren und sich auf die Kerngeschäftssysteme und die für die Arbeit mit ihnen erforderlichen Tools konzentrieren.
Es ist daher nicht verwunderlich, dass Low-Code-Tools populär geworden sind. Sie bauen auf vertrauten Konzepten auf, um Endbenutzern ein Toolset an die Hand zu geben, mit dem sie Anwendungen erstellen und freigeben können, die sie benötigen. Als logische Nachfolger von Excel und Access sind sie Spielplätze, die den Zugriff auf Daten eröffnen und Möglichkeiten bieten, Anwendungen und Dienste zu verknüpfen, während sie gleichzeitig einfache Benutzeroberflächen aus gemeinsamen Bausteinen aufbauen. Sie können sie sich als moderne Tools zur Prozessautomatisierung vorstellen, die in der Lage sind, Workflows aus Vorgängen zu extrahieren und diese erfassten Aktionen in Code umzuwandeln.
Low-Code-Tools wie Zapier und Microsofts Power Platform werden oft als eine Möglichkeit angesehen, die Entwicklungsnachfrage zu entlasten und es den Benutzern zu ermöglichen, die benötigten Apps zu erstellen, wenn sie sie benötigen. So gut es auch ist, eine Möglichkeit zu haben, die App-Lücke zu verringern, gibt es erhebliche Grenzen, die es unmöglich machen, Low-Code-Tools isoliert zu betrachten.
Verwalten von APIs
Was bei der Eile zu Low-Code oft vergessen wird, ist, dass es sich im Kern um eine Workflow- und Integrationstechnologie handelt, und das bedeutet, Endpunkte zu erstellen und zu verwalten. Hier werden bestehende Entwicklungsteams unerlässlich, da sie mit der Bereitstellung von verwalteten APIs für bestehende Anwendungen und Dienste beauftragt werden müssen. Während die REST-basierten API-Modelle, die von den meisten Low-Code-Tools verwendet werden, relativ einfach zu implementieren und zu unterstützen sind, führt dieser Prozess zu einer Reihe neuer Probleme: Wer erhält Zugriff auf diese APIs, und auf wie viel kann er über sie zugreifen?
Sie können keine Low-Code-Lösungen implementieren, ohne eine Form des API-Managements, das in Ihre bestehende Identitätsplattform eingebunden ist. Rollenbasierte Zugriffskontrollen und verwaltete Drosselungen sind erforderlich, um die Datensicherheit und -integrität zu gewährleisten. Sie müssen sicherstellen, dass nur diejenigen auf geschützte Daten zugreifen können, die sie benötigen, und dass zu viele Benutzer den Betrieb von Branchensystemen nicht beeinträchtigen. Indem Sie die API-Verwaltung zu einem Teil Ihrer Low-Code-Suite machen, können Benutzer, die Zugriff auf APIs benötigen, mithilfe einfacher Self-Service-Prozesse bereitgestellt werden, wobei ungenutzte Konten durchsucht werden, um Datenverluste zu vermeiden.
Arbeiten in Teams
Dann gibt es noch das Problem, dass Low-Code isoliert entwickelt wird. Zu oft werden Assets mehrfach erstellt, wodurch die Vorteile der Wiederverwendung und Portabilität von Code verpasst werden. Ein Teil des Problems besteht darin, dass viel Low-Code in proprietären Umgebungen entwickelt wird, ohne Integration mit Quellcodeverwaltungssystemen oder mit Social-Coding-Umgebungen wie GitHub. Sogar die ursprüngliche Low-Code-Umgebung, Excel, entfernt sich vom proprietären Modell mit seiner neuen LAMBDA-Funktion, die es Ihnen ermöglicht, Codeblöcke zwischen verschiedenen Projekten zu teilen.
Klar ist, dass Low-Code Code Code ist, auch wenn er in einer visuellen Drag-and-Drop-Leinwand generiert wird. Wir müssen ihn genauso behandeln wie den Code in unseren Mainstream-Unternehmensentwicklungen, um sicherzustellen, dass er sicher und zuverlässig ist und dass, wo immer möglich, das Wissen, das zum Erstellen dieser Anwendungen verwendet wird, nicht verloren geht und mit anderen Teams geteilt werden kann.
Frühe Low-Code-Tools übersprangen vieles, was dafür unerlässlich war. Ja, Sie könnten Prozesse darum herum aufbauen, mit Entwicklerbewertungen und anderen Meilensteinen, aber dieser Ansatz steht den offensichtlichen Vorteilen von Low-Code im Weg und stellt der schnellen Entwicklung von Apps, die möglicherweise nur ein paar Monate geplante Lebensdauer haben, Hindernisse in den Weg.
Wenn Sie Low-Code in groß angelegte Entwicklungstools einbringen, können Sie die Fähigkeiten aus verschiedenen Teilen des Unternehmens nutzen und so genannte "Fusionsteams" aufbauen, in denen verschiedene Gruppen zusammenarbeiten, um eine App oder einen Dienst zu entwickeln, der bestimmte Probleme löst. Jedes Mitglied eines Fusion-Teams hat eine andere Verantwortung: Einer kann der Endbenutzer sein, einer ein Low-Code-Entwickler, einer ist für die Verwaltung von Service-APIs. Es gibt keine feste Struktur für ein Team wie dieses. Es setzt sich aus den Personen zusammen, die für eine bestimmte Aufgabe benötigt werden. Sie müssen sich nicht einmal persönlich treffen - ein Slack- oder Teams-Kanal für das Projekt kann für die meisten häufigen Interaktionen ausreichen.
Low-Code als Code
Neuere Tools haben begonnen, dies zu ändern, indem sie neue Verwaltungskonzepte und neue Möglichkeiten der gemeinsamen Nutzung von Code eingeführt haben. Eine wichtige Entwicklung ist die Abkehr von rein grafischen Tools, mit der Entwicklung neuer Sprachen, die vieles von dem kapseln, was mit grafischen Tools gemacht werden kann, und die es uns ermöglichen, unsere Low-Code-Entwicklung in CI/CD-Pipelines und Social-Coding-Tools wie GitHub zu integrieren.
Diese neuen Sprachen eignen sich besser für Low-Code-Umgebungen und bauen auf Konzepten wie SQL-Abfragen und Excel-Formeln auf. Sie sind schnell zu verstehen und verwenden eine Mischung aus deklarativen und funktionalen Programmierkonzepten. Benutzer können weiterhin mit ihren vertrauten grafischen Entwicklungsumgebungen arbeiten und den resultierenden Code automatisch in ihren Git-Repositories speichern. In der Zwischenzeit können Entwickler diesen Code schnell in ihren IDEs oder Code-Editoren überprüfen. Es gibt keinen wechselnden Kontext, und jeder erhält die Tools, die er benötigt, um die Aufgaben zu erledigen, die er erledigen muss. Entwickler können dann CI/CD-Pipelines verwenden, um den Code vor der Veröffentlichung schnell zu testen und nach Showstoppern und anderen kritischen Fehlern zu suchen.
SIEHE: Webentwickler oder CTO, welche Tech-Jobs haben die am schnellsten wachsenden Gehälter?
Wenn Sie Low-Code in Code umwandeln, können Sie die Vorteile einer neuen Generation von Codierungsassistenten nutzen, die auf maschinellem Lernen basieren. Technologien wie das Codex-Modell von OpenAI können gängige Muster im Code identifizieren und Vorschläge machen, die darauf basieren, wie andere Anwendungen ähnliche Probleme lösen. Wenn beispielsweise eine Low-Code-App ein Grid-Steuerelement benötigt, das mit einem ERP-System verbunden ist, kann sie Vorschläge machen, wie geeignete Verbindungszeichenfolgen erstellt oder eine Abfrage am besten formatiert werden kann.
Es ist ein Ansatz, der noch in den Kinderschuhen steckt, aber vielversprechend ist. Es geht nicht so sehr darum, dass eine KI Code für Sie schreibt, sondern darum, einen KI-basierten Paarprogrammierer zu haben, der Vorschläge macht, wie der Code verbessert werden kann. Wenn Sie lernen, wie Sie Low-Code-Anwendungen erstellen, handelt es sich um eine Reihe von Stützrädern, die Sie langsam abnehmen können, um die Abhängigkeit sowohl von KI als auch von Entwicklerressourcen zu verringern.
Es ist möglich zu sehen, wie dies endet, wenn Entwickler von Kernsystemen APIs erstellen, KIs verfeinern, wie diese verwendet werden, und Benutzer schnell ihren Vorschlägen folgen, um qualitativ hochwertige Apps zu erstellen, die gut funktionieren und andere Benutzer nicht stören.
Wir stehen am Anfang eines großen Wandels in der Art und Weise, wie wir Apps erstellen und verwenden, und Low Code wird ein wichtiger Treiber in dieser neuen Revolution sein. Die Beziehung zwischen Low-Code und Mainstream-Anwendungsentwicklung muss eng sein. Da Low Code jedoch als eine Möglichkeit angesehen wird, auf den Mangel an Entwicklungsressourcen zu reagieren, ist dies eine Beziehung, die sorgfältig verwaltet werden muss. Daher ist es gut zu sehen, dass Unternehmen die Bedeutung eines effektiven API-Managements, des Einsatzes von Tools zur Verbesserung des Code-Sharings, neuer Teamstrukturen, die Organisationsgrenzen überschreiten, und schließlich des Einsatzes von maschinellem Lernen zur Risikominderung und Produktivitätssteigerung anerkennen.