Things change. And yet many midrange professionals fail to recognize this simple truth. They seem oblivious to the momentous change going on all around them. I'm referring here to "our world"-the world of contemporary computing. Twenty years ago, the conventional wisdom (CW) stated that punched cards were inviolate and unchangeable. Cards would always be with us, and anyone who doubted it was dismissed as a woolly-headed dreamer.
Seen any card decks lately?
Fifteen years ago, PCs were looked upon as toys or projects for hobbyists. The CW never really believed there was a use for those clunky, gerbil-powered, infernal machines in someone's office, much less in someone's home.
Say, isn't that a PC on your desk?
The CW pundits were on the money ten years ago though. We did have visual programming! Here's how it worked: you coded RPG applications on a green screen tube. Wow, now that's visual programming.
Five years ago, the closest thing we had to client/server programming was...your job. The CW held that you were the server and your boss was the client. Mess up that relationship and you could general protection fault your way out the door.
Flash forward to today.
The same backward-thinking CW folks of yesteryear are proclaiming a new birth for RPG. There's talk of visual RPG (the ultimate oxymoron), ILE RPG (ILE = It's Laughable Enough), and RPG 4 (For what? Forever?). And these same dodos eschew client/server programming, event-driven programming, and any contention that RPG has outlived its usefulness.
But it has.
A young programmer just getting into the business would have to look at RPG and mutter, "It's toast. Ten toes up. Ancient history. Pass?. An anachronism. A quaint throwback to the days of punched cards, no PCs, and green screen programming. There's no viable long-term future for RPG other than as a maintenance mechanism for legacy applications." I agree.
-Kris Neely
Kris, you state that 20 years ago anyone who doubted that punched cards were inviolate and unchangeable was thought of as a dreamer. Well, I was there, and, at least in my corner of the world, that wasn't true. Any technical innovation that would make things easier was wholeheartedly accepted by the DP professionals I worked with. It was always a question of how quickly we could get our hands on the new technology.
I can remember the excitement when console support (basically through a Selectric typewriter) was added to the System/3. When CRTs came to the System/3, all a programmer could think about was how he could get one on his desk.
Now look at the incredible amount of change in computer technology occurring today: client/server computing, object-oriented technology, event-driven programming, graphical user interfaces, and on and on. Can we afford to ignore it? Of course not, but, at the same time, I don't think most companies can afford to completely toss out existing solutions.
ILE RPG/400 and visual RPG (VRPG) are both major improvements that will help AS/400 programmers write more modern and higher-quality systems using a tool with which they are familiar. Isn't this a way companies can preserve their investment in RPG and at the same time take advantage of new technology?
Is it fair for you to criticize those who embrace a better RPG so they can do more and do it better with the products in which their companies have invested?
You're simply failing to see that improving and changing RPG to adapt to industry trends makes sense to those using the language (an overwhelming majority of AS/400 programmers).
Are you sure the conventional wisdom (CW) you talk about isn't just a Kris Neely opinion (KNO)?
- Richard Shaler
Around 300 million years ago, the earth was composed of a single land mass called Pangea. All the species on the earth intermingled in the Darwinian process of evolution. As plate tectonics caused the continents to separate, one continent, Australia, became completely isolated and developed a unique set of species. Today, if the species of Australia had to compete with those of the rest of the earth, chances are they wouldn't do well in the larger environment against the more adapted species.
The AS/400 and RPG are in a similar situation. Originally, we had a unified computing mass called mainframes. A comparatively small piece called midrange systems broke off. These systems have odd languages (species), like RPG.
At the same time, another branch broke off and created a larger and more adaptive set of languages. Languages like C went from non-standard C to ANSI C to C++. All the languages in these environments had to compete with each other, and the strongest have survived.
For better or worse, the computing "landmasses" are starting to come together again. We're going to find RPG competing with other languages, and (like the species of Australia) RPG isn't likely to survive in a species to species shoot-out. My hope is that IBM will have the vision and the leadership to see this trend and reduce the wasteful use of resources on evolutionary deadends like RPG.
- Jim Hoopes
Okay! Okay! So RPG is old, and maybe a little tired, and possibly even dated! (Well, just a bit!) But let's get real for an instant! Dr. Richard Mirth said it best when he pronounced, "RPG isn't a language! It's a cult!"
Yes, RPG has been around for a very very long time. We had RPG I (pronounced 'Are Pee Gee Eye'), then RPG II (Eye Eye), then RPG III (Eye Eye Eye), and then RPG/400 (Eee Eye Eee Eye Ooh!), and then....well, you get the idea.
And so, when I hear the rumors and announcements about still another compiler version, I instinctively reach for the Excedrine (headache number 400?). For I realize, much to my dismay, that "No! RPG is not going to go away!" It's like dreaming that terrible recurring dream: being caught up in the middle of a DOUEQ loop that never ever ENDDOs.
Now you may believe that I hate RPG, but the truth is, I love it! Almost as much as I love to hate it!
I'm a purist! I believe these new compiler versions are really a plot to heap shame and abuse upon the sanctity of our creed. "Visual RPG! Fie!" Dr. Mirth recently said. "Why, when I was a lad, we didn't have to 'visualize' our code! We could feel it moving through us! Like indigestion! Or gout!"
And ILE RPG is exactly what I'm talking about now! Here's a compiler that allows my RPG program to communicate with other programs actually written in some other language! Now that's truly frightening! Who knows, it might even strike up a little conversation with some PASCAL rascal! Is that the American way?
No, I believe they should have left RPG alone, the way it was meant to be! And then maybe they would have also left us alone, to dress up in our green phosphor robes and get back to a good old game of "80 Column Punch Card Pickup!" After all, that's really what business computing is all about. Isn't it?
RPG is dead! Long Live RPG!
Oh boy....
- Thomas M. Stockwell
Like it or not, RPG is going to be around for a while. With the release of ILE RPG, IBM has once again breathed new life into this tired old workhorse. What really surprises me is that it's made it this far.
The name alone reveals how outdated it is: RPG, the Report Program Generator. Originally it was only supposed to be used to create reports! If IBM is going to keep improving this language, I think it's about time they stopped calling it RPG.
Don't get me wrong. I'm all in favor of anything that helps programmers get their jobs done. It's just that the name RPG is giving the AS/400 community a bad name. When I talk to programmers who work outside of the AS/400 arena, they say, "Oh, you work on an AS/400? That's that RPG machine isn't it?" I also heard that someone on the Internet recently described a C program as being "so simple even an RPG programmer could understand it." Let's face it, to the rest of the world, RPG is a joke.
If IBM really wants to bring RPG into the 20th century, they'll need to do more than just give it a new name. Here are just a few of the changes I think it needs to make to keep RPG competitive.
o Get rid of the columns! Columns place too many restrictions on the programmer. Any language that doesn't let you indent your logic just isn't going to cut it.
o Lose the indicators. If a language forces you to remember what *IN67 means, it will never be taken seriously.
o Trash the cycle. If RPG is to ever shed it's "report generator" image, the cycle has to go.
o Where are the multidimensional arrays? In this day and age it's hard to believe RPG still doesn't have them. Even BASIC's had them since its infancy.
o How about user-created functions? Built-in functions are great, but programmers need to be able to create their own.
o What about local variables? Why should programmers have to worry that variables used in one subroutine might clobber variables used in another subroutine?
I could go on, but what's the point? If IBM makes these kinds of changes, then it wouldn't be RPG anymore. Now, there's an idea. Maybe what we really need is a new language. Naw, then we wouldn't have RPG to kick around anymore.
- Robin Klima
LATEST COMMENTS
MC Press Online