Virtually every migration prospect we talk to wants to get to C#, but some want to get there quicker than others.
Many IBM i RPG shops want to migrate their system-of-record RPG applications immediately to C# .NET. They have an experienced C# programming team at the ready and want to get to C# quickly. For these shops, ASNA Monarch migrates their RPG applications directly to C#.
However, there is another group of IBM i shops who want to migrate to C#, but they aren’t ready for the language leap that presents. Further, they have RPG programmers with a few years left on the clock. Moving directly to C# would marginalize those RPG programmers’ particpation in post-migration application enhancements and extensions.
For this second set of IBM i shops, ASNA Monarch provides an RPG-first migration option:
The application is migrated initially to ASNA Encore RPG. ASNA Encore RPG is a high-level, type-safe language for .NET. It has an RPG-like syntax and is a superb bridge to .NET for green-screen RPG programmers. With Encore RPG, RPG programmers can both participate in post-migration enhancments as well serve as mentors to the C# programmers as they work to understand the migrated application’s logic.
Later, perhaps when the RPG team retires, the migrated application, and all of the extensions and enhancements that has been performed on it, can be very easily to converted to C#. From there on out, the application is 100% in C# programmers’ hands without any trace of RPG remaining.
Regardless of how strongly a given shop feels about its migration path, the flexibility of targeting RPG initially provides substantial benefits:
In any case, it’s important to remember that the RPG estate application isn’t documented (or if it is, those docs are old and out of date). All of the behaviors, the workarounds, and the anomalies (a kind word for bugs!) are embedded in your RPG programmer’s heads. These RPG programmers are a highly valuable asset to have engaged in the application migration project. Using Encore RPG’s RPG migration path initially is a superb way to help get that knowledge passed off to the C# team. Once absorbed, it’s easy then to create a pure C# version.