TRAINING · THE BOOK

Migrating RPG Code to Modern Languages

A practical playbook for teams modernizing IBM i applications, by Federico Tomassetti and Gabriele Tomassetti.

Front cover of Migrating RPG Code to Modern Languages: A Practical Playbook for Teams Modernizing IBM i Applications
Published October 2025

RPG has run core business applications for decades, and on IBM i it still does. What has changed is everything around it: the number of people who write RPG, the systems the business now needs to connect to, and how long a change takes when only two people can make it.

This is the book we wanted to hand to clients at the start of a project. It covers the decisions before the code—why migrate at all, what actually happens during a migration, which target language to pick—and then the specific technical problems that make an RPG migration different from any other: indicators, GOTO, data structures and overlays, green screens, CL programs and the database underneath all of it.

It is written for the people who have to do it and the people who have to approve it, which is why roughly half of it is about planning, testing and the ways migrations go wrong, and only the middle third is about translating code.

AuthorsFederico Tomassetti and Gabriele Tomassetti
PublishedOctober 2025
Chapters13, in four parts
FormatsPaperback, Kindle, PDF and EPUB
Paperback ISBN979-8292721499

What is in it

Part one

Making sense of legacy migrations

  1. 01Why migrate? The reasons that hold up under scrutiny, and the ones that do not.
  2. 02What happens during a migration — the shape of the work, end to end.
Part two

Planning the migration

  1. 03The different kinds of migrations, and which one your situation calls for.
  2. 04Choosing the target language and framework: Java, Python or C#.
  3. 05Planning the migration: scope, sequence and the decisions that have to be made early.
Part three

Key technical challenges

  1. 06Translating RPG code, including indicators and GOTO.
  2. 07Translating data structures and overlays.
  3. 08Green screens and the user interface.
  4. 09The database.
  5. 10Translating CL code.
Part four

Ensuring success

  1. 11Testing the migration and verifying equivalence with the original.
  2. 12The Strumenta Migration Pipeline, the infrastructure we use to deliver migrations.
  3. 13Migration pitfalls and best practices.

Who it is for

If you want to know how we think about migrations before you talk to us, this is the longest and most candid version of the answer.

Where to get it

PDF and EPUB

Direct from us on Gumroad, with a six-month money-back guarantee.

Buy on Gumroad →

Paperback and Kindle

On Amazon, in the marketplaces below. The paperback and the Kindle edition are separate listings.

Beyond the book

The book describes the method. If you want it applied to your own estate, that is what the practice does.

Migration Blueprint

We parse your real codebase and map modules, dependencies, dead code and the risky corners, then set out a strategy with a realistic scope.

Migration Blueprint →

RPG & IBM i modernization

RPG to Java, RPG to Python, Synon / CA 2E, and the RPG Language Engine underneath all of it.

RPG & IBM i →

Ready-to-go RPG to Python

A packaged migration path for teams whose target is Python.

Ready-to-go migration →

Read chapter 13 before you commit to anything.

It is the list of ways these projects go wrong. If your plan already avoids all of them, you probably do not need us. If it does not, tell us what you are running and we will say what we would do.

Talk to us

Scroll to Top