Not every IBM i shop wants off the platform, and plenty of them are right. The system is paid for, it is stable, and it processes the day’s work without drama. What those shops actually have is a readability problem: the code is fixed-format RPG, the developers who think in columns are retiring, and the developers you can hire read it the way most of us read Latin. Slowly, and with a reference book open.
Fixed-format to free-format RPG conversion is the modernization path built for exactly this situation. It is also regularly oversold, so it is worth being precise about what it fixes and what it cannot.
What Free-Format Conversion Fixes
Readability for the developers you can actually hire. Free-format RPG reads like a modern language: named operations, visible structure, logic that flows down the page instead of across rigid columns. A developer coming from Java or Python can follow a free-format program on day one. That same logic in fixed-format columns might as well be encrypted.
Onboarding time. Shops that convert report the same thing: the code stops being the bottleneck for new staff. The business logic was never the hard part. The notation was.
Maintainability and review. Modern control structures, meaningful indentation, and the retirement of numbered indicators mean changes are easier to make and easier to review. Code review on fixed-format RPG is a specialist activity. On free-format, it is just code review.
Your hiring pool. This is the quiet one. A job posting for “RPG developer, fixed-format legacy system” and one for “IBM i developer, modern free-format codebase” draw from different decades of the labor market.
What It Cannot Fix
Honesty matters here, because a conversion sold as a cure-all becomes a disappointment on schedule.
- Architecture. A monolithic program that mixes database access, business rules, and display logic is still a monolith in free-format. The conversion changes notation, not structure.
- The data model. DDS-defined files, shared record formats, and the dependencies around them are untouched by reformatting the programs that use them. That is its own project, and we wrote about it in our AS400 database migration guide.
- Dead code. Converting a program nobody calls produces beautifully readable code nobody calls. Retirement decisions still have to be made, and they need a dependency map, not a formatter.
- Missing knowledge. If nobody knows what a program does, free-format makes the mystery easier to read. It does not solve it. Solving it takes analysis that produces descriptions and dependency context, which is a different tool doing a different job.
Why It Is the Lowest-Risk First Step
Among modernization moves, fixed-to-free conversion has a rare property: the platform, the database, the jobs, and the business behavior all stay put. The blast radius is the source code itself. Done correctly, the converted program compiles to the same behavior the old one had, and your operations calendar does not notice the difference.
That makes it an ideal first step for shops that want momentum without betting the company. You modernize the asset your team touches every day, you buy years of maintainability, and you keep every option open. A codebase converted to clean free-format is also a better starting point if you later decide some components should move to Python or another language entirely.
Convert With Understanding, Not Just a Formatter
The mechanical part of conversion is well-trodden. The risk lives in the edge cases: repurposed indicators, copy members with side effects, programs whose fixed-format quirks were doing real work. This is why AS/Forward treats conversion as the last step, not the first. It ingests your source through a proprietary ingestion layer that reads six RPG dialects, builds the dependency map, generates plain-English descriptions of each program, and assigns a readiness status before anything is converted. Programs the ingestion layer fully understood convert with confidence. Programs with unresolved pieces get flagged for human eyes first.
The whole run happens air-gapped inside your own infrastructure, and the output target is your call. For shops staying on IBM i, that target is clean free-format RPG, and staying is a strategy we will defend: there is a reason companies have run these systems since the 1970s.
See Your Codebase in Free-Format Before You Decide
The cheapest way to evaluate this path is to look at your own code on the other side of it. Golden Path Digital can run AS/Forward against a representative slice of your fixed-format RPG and show you the converted output, the dependency map, and the flags, before you commit to anything. Call 501-232-7188 and we will set it up.