> die AS400 ist vor 20 Jahren gestorben

Naja, ok, i-Series. i5, i, was auch immer. Ich denke, wir wissen alle was gemeint ist. Und als ein alter Sack, der noch eine /34 (und spaßeshalber auch mal eine /32) programmiert hat, ist der Name zweitrangig.

https://www.helpsystems.com/de/blog/ist-die-as400-tot

Tatsächlich hatte ich bereits 1990 damit begonnen, mich mit der ASCII/POSIX Welt zu befassen, namentlich Linux - in allen möglichen Varianten. Und seit 2005 bin ich (fast) nur noch in der Linux-Welt unterwegs. Nicht, weil ich die AS400 etwa für tot gehalten hätte, sondern weil der Projektmarkt damals nicht mehr genug hergegeben hat. Aktuell bin ich bei der DFS in einem Projekt, und schreibe Software für Fluglotsen. Linux, C++ et. al.

Diese Welt ist sehr anders. Sie kann unendlich vieles viel besser als die AS400/i5/iSeries. Aber sie kann vieles andere eben nicht so gut, und zuweilen auch gar nicht. Wer in dieser Welt mal nach Memory-Leaks gesucht hat, oder unerklärliche Core-Dumps analysieren musste, weiß was ich meine.

Und das ist immer die große Stärke der AS400 (...) gewesen: Detailliertes Logging, Sichere Speicherverwaltung, keine verloren gegangenen Memory-Pointer usw. usf. Es ist aber leider auch genau das, was die Systeme auch einschränkt. Der ewige Zusammenhang zwischen Möglichkeiten einerseits und Fehlerquellen andererseits ist für mich nirgendwo so deutlich geworden, wie zwischen diesen beiden Welten.

Vielleicht sollte ich noch anmerken, dass ich aufgrund meiner beiden "Heimaten", nämlich EBCDIC-IBM-Midrange-RPG auf der einen Seite, und ASCII-POSIX-*ix-C-SQL-C++- auf der anderen Seite in den 12 Jahren in Italien ein Projekt geführt habe, dass nichts Geringeres als einen Umsetzer von RPG in C++ als Ziel hatte. Wir haben RPG-III und CL Programme in natives C++ übersetzt, die Architektur ist von mir.

Insgesamt konnte dieser "Transpiler" von 32 Mio Lines of Code (RPG) zum Schluss mehr als 99% korrekt übersetzen. Der Zyklus wurde ebenso realisiert wie die Gruppenwechsel, Display Files gab es auch, und sogar die Matching Record Verarbeitung funktionierte. Auch eine entsprechende Laufzeitumgebung haben wir implementiert, mit Activation Groups und allem drum und dran.

Kurioserweise hatte ich dem Kunden zu Beginn des Projektes ernstlich davon abgeraten, die AS400 in dieser Weise ersetzen zu wollen. Dennoch wollte man das unbedingt machen, also hatte ich angenommen. Es war das vielleicht spannendste Projekt meines Lebens.

Aber weil ich nun eben die tiefsten Eigenheiten der Sprache RPG, der Datenhaltung und der beteiligten Komponenten auf diese Weise kennengelernt habe, bekam ich auf z.T. schmerzliche Weise auch Kontakt mit den Unterschieden beider Architekturen.

Die AS400 (und Folgemaschinen) sind im Vergleich einfach um WELTEN überlegen, wenn es um sicheren, robusten und zuverlässigen Betrieb einer Software geht. Da hilft die ganze Smartness "moderner" Sprachen nichts. Nicht, weil die Sprachen es per se nicht könnten. Sondern weil IBM damals eben noch IBM war. Die Ingenieure haben, beginnend mit der /34, /36, /38 und schließlich der AS400, damals einfach Großartiges geleistet.

Ich arbeite gerne mit C++, Perl und all den Dingen die man eben in der Linux/POSIX Welt braucht. Aber es braucht E-wig-keiten, das auch nur halb so robust und zuverlässig zu machen, wie eben die IBM Rechner, von denen ich komme.

Nun hat ja noch keiner von so einem Projekt gehört. Die Firma hat das nie veröffentlicht, zu groß die Gefahr des Scheiterns, oder der Effekt, die Kunden zu verunsichern. Mein Vorschlag, das als Opensource Projekt ins Web zu bringen, stieß damals auf Unverständnis. Und so ist es bei einem proprietären "closed source" Projekt geblieben. Insgesamt knapp eine halbe Million Lines Of Code.

Das traurige Ende: Nachdem sich eine Bank zu über 50% in diese Aktiengesellschaft eingekauft hatte, war deren erste Maßnahme, den Vorstandvorsitzenden, seines Zeichens ein visionärer Techniker mit Intel-Hintergrund, gegen einen Banker auszutauschen. Dieser Banker hat nun aber nicht mehr unsere Arbeit gesehen, sondern nur die Kosten. Dabei waren wir im Prinzip ja fertig. Ein Jahr noch oder zwei für die Produktionsreife, mehr hätte es nicht gebraucht.

Die Firma wurde umbenannt, es gibt sie in der alten Form nicht mehr. Nur deshalb kann ich darüber überhaupt berichten.

Kurzum: Die Freiberuflerverträge wurden nicht verlängert, so verließ ich das Projekt im Januar 2019.
Mitte 2019 wurde das Projekt schließlich eingestampft.

...

Die Anfänge dieses Projektes liegen übrigens hier im Forum:

http://newsolutions.de/forum-systemi...ickler-gesucht

Damals hatte ich, als Hobby-Idee, die Möglichkeit so einer Umsetzung hier diskutiert. Überzeugen konnte ich nicht.

Also hatte ich einfach angefangen, ein Konzept zu entwickeln, und einen Prototypen als Proof Of Concept implementiert. Als der dann funktionierte, verlor ich das Interesse. Denn Grundsätzlich ging es, das reichte mir. Ich stellte den Prototyp einschließlich Dokumentation also als Opensource ins Web. *)

Die Italiener, auf der Suche nach so einer Möglichkeit, kontaktierten mich darauf hin, und luden mich für eine Beratung ein. Ich riet ab.

Den Rest steht oben.


*) Die Projektseite habe ich bei Projektübernahme damals vom Web genommen, war ab da ja ein Kundenprojekt ...