Was Software-Ingenieure über den neuesten Trend in der Software-Entwicklung sagen

Auf LinkedIn schilderte ein leitender Softwarearchitekt seine Erfahrungen, die er bei zwei Verkaufsgesprächen mit No-Code-Anbietern gemacht hatte. Er sagte, die Realität sei, dass wenn man eine No-Code-Lösung wählt, man einfach den Code von jemand anderem übernimmt, um so zu tun, als sei es der eigene Code.

Sein Beitrag erhielt mehr als 1000 Reaktionen. Offensichtlich scheint „No-Code“ einen Nerv bei den Entwicklern zu treffen. Allerdings nicht den richtigen. No-Code? Nein, danke.

No-Code hat bei Softwareentwicklern einen schlechten Ruf. Gleiches gilt für Low-Code. Aber diese beiden Begriffe bedeuten nicht dasselbe. Es handelt sich um zwei völlig unterschiedliche Ansätze für die Entwicklung von Software. Und zu viele Leute werfen sie in einen Topf, als ob sie identisch wären. Dabei gibt es wesentliche Unterschiede.

Wie der leitende Softwarearchitekt sagte, ist No-Code nichts anderes als die Abstraktion von echtem Code durch Andere. Und zwar typischerweise in einer WYSIWYG- oder Drag-and-Drop-Oberfläche, um das zu erstellen, was derjenige glaubt, dass man möchte. Was aber, ist wenn man etwas anderes will? Oder was ist, wenn man vollständigen Code verwenden möchte? Das ist der Punkt, an dem das „No“ in No-Code eine Steinwand darstellt. Sobald man die No-Code-Lösung verlassen will, stößt man geradewegs auf diese Mauer. No-Code-Tools sind wie eine Packung Legosteine. Man kann viel mit ihnen machen, aber man ist auf das beschränkt, was man in der Box vorfindet.

Low-Code dagegen schliesst Code nicht aus. Bei Low-Code-Plattformen können Entwickler fast überall die volle Funktionalität des vollständigen Codes nutzen. Gute Low-Code-Plattformen basieren auch auf einer softwaretechnischen Denkweise. Funktionen wie Bibliotheken, Plug-ins, Instanzen, Staging- und Produktionsumgebungen sind Teil einer guten Low-Code-Plattform. Eine bessere Bezeichnung für „Low-Code“ wäre „effizienter Code“. Lange Rede, kurzer Sinn: No-Code und Low-Code sind nicht das Gleiche.

No-Code? Nein, danke. Low-Code? Ja, bitte!

Softwareentwicklung ist mehr als nur das Schreiben von hochwertigem Code. Es ist ein Prozess, der mit dem Sammeln von Anforderungen beginnt und mit der Übergabe eines funktionierenden Stücks Software endet.

Gute Low-Code-Tools sind nicht darauf ausgerichtet, die Programmierung zu ersetzen, sondern die Softwareentwicklung zu unterstützen. Was ist der Unterschied zwischen Programmierung und Software-Engineering? Programmieren ist das Verfassen von Code. Software-Engineering beschreibt den gesamten Prozess von der Erfassung der Anforderungen über das Testen und die Dokumentation bis hin zur Auslieferung der Software.

Auf Entwickler ausgerichtete Low-Code-Lösungen müssen in der Lage sein, die gesamte Komplexität der Softwaretechnik abzudecken. Ob dies tatsächlich der Fall ist, lässt sich am besten durch folgende Fragen herausfinden: Verfügt die Lösung über Entwicklungs-, Staging- und Produktionsumgebungen für jede Anwendung? Gibt es einen Prüfpfad für die an der Anwendung vorgenommenen Änderungen? Wie wird die Bereitstellung verwaltet? Und, natürlich: Kann ich Code verwenden?

Kommentieren Sie den Artikel

Bitte geben Sie Ihren Kommentar ein!
Bitte geben Sie hier Ihren Namen ein