Modularisierung

Evolution of RPG

Ein Segen, kann oft auch zu einem Fluch werden. So ergeht es schon seit Jahren vielen IBM i RPG und Cobol Anwendungen, die durch den Segen der Abwärtskompatibilität auch 2019 auf dem neuesten Betriebssystem noch so laufen, wie sie teilweise schon seit über 40 Jahren auf den Vorgängermaschinen der AS/400 schon gelaufen sind.

I.d.T. habe ich Kunden, die noch einige RPG-II Anwendungen fahren, die Mitte der 70er Jahre entwickelt wurden und diese funktionieren immer noch problemlos.

Dieser vermeintliche Segen des Investitionsschutzes, den man so auf keinem anderen Betriebssystem findet, mutierte aber schon oft zu einem Fluch und tut das auch heute immer noch.
Denn irgendwann kommt ein neuer IT Leiter oder Geschäftsführer bzw. Vorstand in das Unternehmen und findet “uralte” Programme vor. Leider wird dann in vielen Fällen nicht zuerst gefragt, wie die Effektivität dieser Anwendungen aussieht, sondern es fallen nur die Punkte auf, die diese “alten” Programme nicht können und die “moderne” Programme standardmäßig beherrschen und so nimmt das Übel seinen Lauf…

Leider wurden und werden sehr oft die vorhandenen Programme nicht auf den aktuellen Stand der Technik angepasst, weil ja alles wunderbar funktioniert. Aufgrund des hektischen Tagesgeschäfts kommen die IBM i Entwickler oft auch gar nicht dazu ihre eigenen Kenntnisse entsprechend auf dem Laufenden zu halten und so entwickeln auch heute noch zahlreiche RPG und Cobol Entwickler, wie vor 10 oder 20 Jahren.

Mit meinem neuen Online Kurs “Evolution von RPG” bringe ich alle RPG Entwickler, die nicht auf dem neuesten Stand sind, Schritt für Schritt in 4 Etappen auf eben diesen.
An einem durchgängigen Beispiel betrachten wir uns Schritt für Schritt die Evolution von RPG. Von RPG/400 mit seinem Spaltenformat und Zyklus über das ILE RPG mit den Anfängen von /Free RPG, embedded SQL, Modulen und Serviceprogrammen bis zum heutigen Total Free RPG mit einem Schichtenmodell und Unit Tests, wie man es auch im .NET, Java und Javascript Umfeld heute benutzt.

Schnelle Web Services in RPG und Cobol

REST Service mit native I/O

Ein Bild sagt mehr, als tausend Worte.

In unserem Beispiel hier oben, kann man wohl eher sagen, ein bisschen Code sagt mehr, als tausend Worte, denn was Sie hier sehen ist ein nativer RPG Web Service, welcher als ILE Objekt auf der IBM i kompiliert wurde und diese Ausgabe im Browser erzeugt:

Ausgabe im Browser

Dieses einfache “Hallo Welt” Beispiel zeigt gleich mehrere Stärken von IceBreak, dem einzigen nativen Web- und Applikationsserver für IBM i, der gerade deshalb so unglaublich schnell ist.
Die Vorteile und Stärke von IceBreak liegt nämlich nicht nur in seiner Laufzeit Geschwindigkeit, sondern vor allem bei der Geschwindigkeit, in welcher RPG und Cobol Entwickler native Web Services auf der IBM i erstellen können. Wie man in dem Beispiel schön sehen kann, handelt es sich um ganz normalen RPG Code.
Es spielt auch keine Rolle, ob Sie SOAP oder REST Webservices entwickeln möchten. Auch ist es kein Problem SOAP oder REST Services von anderen Plattformen direkt in Ihren RPG und Cobol Programmen zu verwenden!

Natives RPG und Cobol

IceBreak erweitert RPG und Cobol bzw. jegliche IBM i ILE Sprachen, um zusätzliche Funktionen, sowie die Möglichkeit ganz einfach und direkt HTML5 Code oder XML/JSON Daten auszugeben bzw. zu lesen. So holt sich die Funktion “reqNum” direkt den genannten Parameter aus der Browser URL, sodass dieser im RPG Programm verwendet werden kann.
Wie Sie in diesem Beispiel auch direkt erkennen können, versteht IceBreak auch “klassisches” RPG, welches spaltenorientiert programmiert werden und statt embedded SQL auch native I / O (F Bestimmungen) verwenden kann. IceBreak versteht jegliches RPG und Cobol bzw. CL oder C/C++, welches die IBM Compiler umwandeln können!

Im nächsten Beispiel sehen Sie einen vollständigen Total Free RPG REST Service, welcher die IceBreak Erweiterung noxDB verwendet, um direkt via SQL Befehl JSON Dokumente zu erzeugen:

REST Service in Total Free RPG mit noxDB

Heraus kommt das:

ILE Web- und Applikations Server

IceBreak heißt der schnellste Web- und Applikationsserver für die IBM i ILE Umgebung. IceBreak ist deshalb so schnell, weil er selbst in ILE (C++ und RPG) programmiert ist und daher native auf IBM i läuft und jedes Programm, welches Sie damit entwickeln in ein natives ILE Objekt umwandelt.
Aus diesem Grund brauchen RPG und Cobol Entwickler sich auch nicht auf andere Programmiersprachen oder Tools einzulassen, denn sie können wie gewohnt ihre Anwendungen weiterentwickeln, jedoch als SOAP oder REST Webservices bzw. Clients verwenden.

Ach so – Sie wollen gar keine SOAP oder REST Services oder Clients in RPG entwickeln, sondern schnelle Web Anwendungen? Dann sollten Sie sich IceBreak erst recht anschauen, denn mit IceBreak entwickeln Sie die schnellsten ILE Web Anwendungen für IBM i – direkt mit Ihrem RPG oder Cobol Know how!
Lesen Sie hierzu auch die Neuigkeiten

Sie sind interessiert?
Kein Problem. Dann erfahren Sie hier mehr zu IceBreak oder Laden Sie sich Ihre kostenlose Community Edition direkt herunter.

Hier geht es zur IceBreak Produktseite

Laden Sie Ihre kostenlose Community Edition direkt hier herunter

oder schreiben Sie mir einfach eine Email und ich führe Ihnen IceBreak live vor.

Ich freue mich auf Ihren Kontakt. 
Email: mal@mlitters.com 
oder rufen Sie mich einfach an.

Verpassen Sie auch nicht meinen kostenlosen WebCast zum Thema:

Kostenlos aber nicht umsonst! Webcast – Web Anwendungen und Web Services mit RPG und Cobol!

Fachkräftemangel wird immer kritischer

In einer kürzlich veröffentlichten Studie von Stripe, wurde noch deutlicher, wovor ich meine Kunden bereits seit Jahren warne und immer wieder aufmerksam mache.

Lt. der Umfrage ist es für die Unternehmen heute wesentlich leichter an Kapital zu kommen, als an (gute) Softwareentwickler und diese Entwicklung spitzt sich immer weiter zu.

Neben der Tatsache, dass die Unternehmen immer schwerer gute Softwareentwickler finden und dann auch noch an sich binden können, wurde durch die Studie ein weiterer kritischer Punkt deutlich, auf den viele meiner Kollegen und ich immer wieder seit Jahrzehnten hinweisen und doch immer wieder auf taube Ohren bei den Verantwortlichen stoßen:
Nämlich die Tatsache, dass die vorhandenen Entwickler im Unternehmen durchschnittlich 17 Stunden in der Woche mit der Wartung von veralteter Software verbringen.

Bei einer 40 Stunden Woche sind dies satte 42,5% der Arbeitszeit, die, wie oben schon festgestellt, immer wertvoller wird.
Grund hierfür sind i.d.R. veraltete Programmstrukturen, die über Jahrzehnte nicht modernisiert wurden.

Eine Änderung oder Fehlersuche in einem 15.000 Zeilen Programm, welches voller globaler Variablen steckt (und leider auch oft noch mit GOTOs bestückt ist) ist nun einmal wesentlich aufwendiger, als die gleiche Änderung oder Fehlersuche in einem Modul mit gerade mal 80 Zeilen Programmcode und lokaler Variablen, welches exakt für eine bestimmte Aufgabe erstellt wurde.

Die Ersparnis, die eine Modernisierung in diese Richtung mit sich bringt, steht weit über dem Aufwand, den solch eine Modernisierung verursacht.
Dabei ist das übrigens unabhängig von der eingesetzten Programmiersprache oder Plattform, denn die o.g. Probleme gibt es nicht nur auf IBM i, wie viele leider immer meinen, sondern die gibt es überall.

Langsam aber sicher scheinen das nun auch die Geschäftsführer und Entscheider zu verstehen, die dies all die Jahre für reine Geldmacherei hielten und glaubten das sich die IT Leute (interne wie externe) damit nur selbst verwirklichen wollen.
Kaum fängt eine IT Abteilung an, die Zeiten, die jeden Tag aufgewendet werden, etwas genauer zu dokumentieren, kann man dies meist nach nur 1-2 Monaten exakt vorrechnen und somit auch den sparsamsten Kaufmann überzeugen, wie schnell er wie viel Geld einsparen kann, wenn er in Modernisierung investiert.
Dabei rede ich an dieser Stelle rein von einer Backend Modernisierung. D.h. die Datenbank, sowie die Backend Programme. Das Frontend ist wieder ein anderes Thema, welches sich aber mit einem modernen, modularen Backend ebenfalls viel schneller, kostengünstiger und damit einfacher modernisieren lässt.

Auch verstehen immer mehr Entscheider und Geschäftsleiter, dass der Mangel an guten Softwareentwicklern und IT Spezialisten eine der größten potenziellen Gefahren für ihr Unternehmen darstellt.


Um unseren Kunden und die, die es noch werden wollen, bei diesen Herausforderungen zu helfen, bieten meine Kollegen und ich Ihnen neben der individuellen Projektarbeit und Schulungen zum Aufbau von Nachwuchsentwicklern, auch langfristige Verträge an, mit denen Sie eine garantierte Unterstützung über einen definierten Zeitraum von uns erhalten und sich somit keine Gedanken über den Fachkräftemangel machen müssen.

Sie sind daran interessiert?
Kein Problem.
Schreiben Sie mir einfach.

Ich freue mich auf Ihre Mitteilung unter 
Email: mal@mlitters.com

oder rufen Sie mich einfach an.