The Last GOTO

I have been reading and thinking about the future of my favored programming language and the computer platform upon which I use it. The latter has been the subject of an extended discussion in LinkedIn. Some feel that the naming of the machine is of little consequence, unless you use the wrong one. It is felt that to call it the AS/400 is inaccurate, since the AS/400 is not called that anymore- which is, of course, true. It is felt that RPG will not survive for an extended period of time because of its intimate connection via DDS (Data Description Specifications) with the 24 X 80 character display green-screen terminal. Others feel that newer innovations may allow it to survive, but only if it dispenses as quickly as possible with the fixed-format (“punch-card”) calculation specifications and move quickly to free-format. There are not many defenders of fixed-format RPG around, and those that use it are probably expected to turn in their coding sheets soon and retire. And, as always, proponents of each view have their own facts and anecdotes to support their view.

I could not hope to make much of an impression on that forum and accomplish anything more than stir up the pot of contention. It is much better to make a one-sided argument here. :-) Anyone who cares to argue may feel free to do so.

The matter of the naming of my favorite machine is to me a matter of importance. As some in that discussion pointed out, that machine continues to be called AS/400 even today, even though IBM gave up on that name a long time ago; but the name still appears in IBM documentation along with other names for it (iSeries, for example) that IBM has given up on.

The Ford Motor Company long ago created a vehicle it called a Ford. It also makes, or has made other brand names like Mercury and Lincoln. The Ford Model T was a roaring success. When the time came to upgrade its model line, did the company take the attitude, “This model will look nothing like the Model T, and certainly nothing like the first cars Mr. Ford created. We don’t want people thinking of those old cars when this new one comes out. We need to call it a Henry! Or perhaps use his initials- the HF1900+”? No, they recognized the value of a brand name. To give another example, very soon after they discontinued the Ford Taurus, they brought the name back and gave it to another car, to give that car credibility.

To call the machine we use an AS/400 is recognition of its stability, which is likely a function of both hardware and operating system software. Only ignorant people outside the computer business would seriously think that calling it by its original name would imply that it only works in a dumb-terminal environment. I prefer to think that people in the computing business, in the world’s IT departments, are not that stupid. It’s a computer, for heaven’s sake. We can make it do whatever we want it to. People who run Windows XP, Windows Vista, or Windows 7 do not expect to encounter the General Protection Faults they encountered in Windows 3.1, just because they are all named Windows. If people who think like that are actually in responsible positions in the IT departments of their companies, I fear for the future of those companies.

That is probably enough about marketing stupidity. I am not a marketer, and I have not had training in it. It just seems obvious to me that if they felt there was such a burning need for a name change, they could have come up with some name that held onto the good reputation and name recognition it had engendered. Perhaps some variation that held onto to the “AS” prefix.

Readers of past entries may perhaps be aware of my feelings on some other topics I mentioned, like free-format languages. The C language, for example, is one of the most non-intuitive languages I have ever looked at. Its only claim to virtue is its popularity, which stemmed from from the fact that C, which really is an “old” language, came riding in as a free language used in association with Unix, and its use was seeded way back when by free distribution to college Computer Science students.

Free- format, as represented by C and other languages – as well as freeform RPG- is not a virtue in itself. See my earlier discussions on this subject.

It has been a problem that RPG is viewed as an IBM midrange language only. It may be too late to dispel that impression. I think it would be a great idea if IBM would release VisualAge RPG to the open-source community. The community would expand its use with a whole lot more vigor and enthusiasm than IBM seems ready to do. I think they would have an Internet HTML-style interface ready very quickly – much more quickly than IBM could or would by itself- and IBM could borrow the ideas back for use with the midrange box. The file access operations even now available in RPG (fixed format or free) are much more rich and elegant than just about any other language. Another language often used for data access is SQL; while I like its ability to pull together data sets, its single record access syntax (not to mention actual speed) to me seems positively kludgy compared with RPG.

But what do I know? I’m just a grunt programmer in a small town in the center of the U.S., old enough to retire, though I probably won’t, as least voluntarily, for a long time. My range of experience is nowhere as wide, and my education not nearly as deep, as that of many whose opinions I read and often value, though I have been in the business for over 30 years.

I view RPG pragmatically; compared with any other language I can conceive of on the midrange, it is a supremely elegant file access and data manipulation language, especially in its RPGIV incarnation. Any further attempts to make it look like another language like Java or C or Pascal would be positively a waste of time and energy. It is bloated enough already.

I think there is no reason why RPG could not be known and used by a wider range of the computing community. I can only wonder why this has not been so. People will not come to the IBM midrange to use PHP or Java. Programmers need to understand the virtues of RPG. And I can say that even though I haven’t the faintest idea how to go about doing it.

If someone does not do something to encourage the use of RPG, it will mean the eventual asssimilation of the IBM midrange (read AS/400, IBM i, iSeries, or whatever you want here) into the IBM conglomerate, since RPG has been so intimately connected with the individuality of the IBM minicomputer since its inception. The oldtimers will have to support RPG until it fades away, and I may be the last RPG programmer, being called in to fix one last program, to determine where that last GOTO goes to.

2 Responses to “The Last GOTO”

  1. Buck Says:

    I think you nailed it. RPG = Midrange-only. IBM is working furiously to turn their hardware and software into commodities so they can compete on (low) price. They are betting the bank on services. That leaves niche markets like us as stranded as Smalltalk, OS/2 and Officevision.

  2. Terry S. Carey Says:

    But what makes RPG truly unique is how it has evolved over the years. From the early days of RPG II (to be honest, even I am not old enough to be familiar with the original RPG language) on through the current days of RPG /free, the language has continued to progress, adding the features needed to support each new generation of business requirements. And the changes were significant: controlled programming constructs in the ’80s, ILE in the ’90s, /free in the ’00s. RPG OA is perhaps the first glimpse of what the ’10s will bring. Because of this, RPG remains a viable language for current business development.

Leave a Reply