As we move into this new era of application development, AS/400, iSeries, and now i5 programmers need to understand that simply doing plumbing-style programming is destined to mean eventual unemployment. By "plumbing," I mean program maintenance on RPG II and RPG III language-based applications.
While both of those languages were and are rock solid for general-purpose business applications, they cannot provide the flexibility and versatility required when your employer says, "I want our data and applications on the Web." And this is normally followed by "yesterday."
Neither RPG II nor RPG IV offers the capability that the now 10-year-old RPG IV language offers, particularly when you combine RPG IV with other languages like C or even Java.
Recently, I taught RPG IV to an RPG III organization, and at the end of the first day, they could not believe how far behind the curve they were. The good news is that they are moving forward to migrate their applications to RPG IV and eventually to the Web, an exciting time at any RPG shop.
Victim of Circumstance
Most shops that are running legacy RPG II code today are doing so because they purchased application packages in which the software vendor misrepresented the code as being "native AS/400." This could be anything from old-world RPG II code that uses the RPG logic cycle to RPG II-style RPG III code with a few named indicators.
I suggest that our beloved AS/400 is a victim of circumstances or perhaps a victim of its own success. It is so rock solid, so reliable that it just doesn't fail. Consequently, people are running applications on machines purchased some 10 years ago with little or no problems. Some people are running newer models but haven't upgraded their applications in decades.
But beyond the small shop that doesn't spend money on IT resources (because they don't have to), most shops need to stop considering migrating to RPG IV. That's right, I said stop considering migrating to RPG IV.
You need to stop thinking about moving to RPG IV and just do it. The window of opportunity is all but passed. If you continue writing in RPG III, your skills may become obsolete. You will no longer be viable, and you will not be able to move the applications you currently have to the next phase in their evolution.
Call for Action
You need to learn RPG IV now. Start writing in RPG IV syntax and the contemporary version of that syntax. That is, if I see the following style of code, then you have failed in your attempt to learn and use RPG IV:
C *IN35 ANDEQ '1'
C MOVE CSTNBR WRK#
C ENDIF
The bottom line is that if you are using RPG II applications, you won't be able to modernize them unless you convert them to RPG III and then RPG IV. There may be pieces that don't convert directly, such as the so-called "chain" files. But there are tools available, such as Linoma's offering.
If you are using RPG III, you're not as far behind, but you are still behind the curve. You need to convert the applications to RPG IV and recompile them. RPG IV can be run in the so-called Default Activation Group to provide backward compatibility with the existing RPG III code. You simply need to run it through the IBM-provided CVTRPGSRC command to convert RPG III to RPG IV. Then, use one of the third-party tools to format the RPG IV source to look a little nicer (such as uppercase/lowercase characters) and move the ad hoc fields to Definition specifications.
Finally, you need to learn how to write and use subprocedures effectively. Using RPG IV and not using subprocedures is almost no progress. There is some progress, but not enough to help you move your applications beyond tomorrow, which is where we all want to be working.
Bob Cozzi has been programming in RPG since 1978. Since then, he has written many articles and several books, including The Modern RPG Language--the most widely used RPG reference manual in the world. Bob is also a very popular speaker at industry events such as RPG World and is the author of his own Web site and of the RPG ToolKit, an add-on library for RPG IV programmers.
LATEST COMMENTS
MC Press Online