About every two years some industry pundit or other takes it upon themselves to remind us that "RPG is Dead." We say "remind" because this theme recurs so frequently -- and always with the same predictable results. One group rushes to agree and joyfully starts banging the nails in the coffin lid, another (usually larger) group decries the statement, starts pulling out the nails, and affirms that the language is indeed alive and well in their world. Sometimes the discussion occurs on the Internet on one of the IBM i related lists, at other times it appears on websites such as LinkedIn, and from time to time it appears in the IBM i press. As Yogi Berra said, "It's deja vu all over again."
The latest, and the reason for this blog entry, appeared recently on iProDeveloper.com under the headline "Is RPG Dead? Why it's time to write the obituary" and was authored by Mel Beckman. Before you read on, you may want to read Mel's piece if you haven't already done so. You may notice that one of the people who commented on the piece was Jon. He has a lot more he could say about some of the points made in the article, but he's trying to restrain himself. We want to make some rather different points here and to dissect the article itself would not serve that purpose.
It seems to us that articles such as this only serve to harm the community. We are a (relatively) small group, and the vast majority of us still believe that IBM i on Power is the single best business system out there -- period. So why do we continue to make such negative public critiques as this? It seems to us that the only thing these discussions serve to do is to help reinforce all of the negative things that our "competition" like to say about us. "Look, even IBM i experts think RPG is dead." And of course if you say RPG is dead then you have pretty much condemned the platform. Make no mistake - that is exactly how the competition uses such articles. After all, a very large percentage of application code running on IBM i systems today is written in RPG. So connect the dots -- from an IBM i competitor's perspective.
We used to think that the positives of such discussions, namely encouraging people to explore new languages and techniques -- outweighed the negatives, but we are less and less convinced of that.
RPG is a tool. Plain and simple. PHP is a tool. So is Java. So is C++. Just as we wouldn't use a hammer to try and smooth out a piece of wood so we (personally) would not want to implement our business rules in Java or C++. Java and other OO languages have a role for sure. There are many things that OO languages are well suited for. We just don't find the argument that business processes are among that set a convincing one. More importantly, we think that these so-called "modern" languages should be added to our tool kit -- not used to replace the tools we already have. Even if it made sense from a capability perspective (which we don't believe it does), it would make no economic sense.
We have no idea what plans IBM may, or may not, have for RPG or of the timeframe in which any new features might be delivered. But we're not sure an OO RPG would be a good option -- not because it would be too late, but simply because such a large percentage of RPGers don't take advantage of the more modern facilities such as subprocedures in the language today. Thinking that those stuck in RPG III mode would embrace OO just because it has an RPG label is just foolish. There are better things for IBM to spend their money on.
"(RPG is) ... no longer routinely used to write new programs that solve current problems." Really? Many, many shops are writing new, modern applications using RPG. Sure, there are shops out there still using outdated versions of the language and outdated tools and techniques. But there are also many mobile and Web-based applications out there with rock-solid, modern RPG at their core.
Since we included a Yogi Berra quote earlier, perhaps it is appropriate to steal one from Mark Twain to close. "The report of my death was an exaggeration."