What exactly does the IBM i community want?
For years we've listened as people complained that customers were moving off the platform and that there were no new customers. So as part of his new You and i blog IBMer Craig Johnson recently posted details of several new IBM i customers. Did people stand up and cheer? Nope. Most of the public expressions that we saw (at least on the Midrange-L list were predominantly negative. Even when others pointed out that they too had seen an upsurge in new customers in their businesses, the reaction was lukewarm at best.
Elsewhere Chris Maxcer recently blogged about essential skills for the modern IBM i developer. One of the comments included the phrase that "Now IBM is deprecating the (sic) RPG" as part of a very negative post. When Jon responded that there was no sign that IBM were doing anything of the sort he was asked "Which planet have you been vacation (sic) on ..."--apparently not the same one as the commenter!
Last week Jeff Olen announced that he was starting iManifest United States, an equivalent to the iManfest groups that have started in Asia Pacific and Europe, as we previously reported. Did he get a "Hooray, it's about time" from the assembled masses? Nope. For the most part the initial reactions were once again in the "Why bother, we're all doomed" category. Many of the negative reactions that we saw came from people that make their living selling services into this market place. Personally we're thrilled to see any initiative that might help improve our business prospects but apparently not everyone feels that way.
Maybe the overall economy is grinding everybody down. It has certainly resulted in a complete breakdown of civility (and common sense for that matter) in the U.S. political arena--but probably the less said about that the better. At least here in Canada the economy is showing signs of turning around. Job losses appear to be slowing. House prices in and around Toronto are rising, and in many areas have recovered most, if not all, of their previous decline. Admittedly, mostly because of stronger banking regulation, things never got quite as bad here as in the U.S., but our economies are so tied that we're still badly affected. As Pierre Trudeau once famously said on the subject of Canada/U.S. relations:
"Living next to you is in some ways like sleeping with an elephant. No matter how friendly and even-tempered is the beast, if I can call it that, one is affected by every twitch and grunt."
In the U.S. there are also many signs of recovery. The most obvious one to us being that we are starting to see more interest in our services. Even more dramatic is that enrollments in our RPG and DB2 Summit conference in Minneapolis in October already substantially exceed the number who attended in Orlando in the spring.
But all of this sounds horribly like good news--and that's not too popular right now so we'd better stop before we depress too many people.
And just to pre-empt the inevitable questions, yes much of this was written slightly tongue-in-cheek, and no we don't wear rose-colored glasses.





Jon
The iManifest has had little to no interest mainly because no one knows about it! As soon as I found out I was onboard. Lets push the fact that it's there and then we should get more interest.. I hope...
About negative comments, sometimes they are the best thing for us, people usually react when offended... I know I sometimes poke the pig just to get a reaction and stimulate some kind of response! I will make sure I add the iManifest links to my blog, others should do the same and as you say get off their A**e and make some noise..
Chris...
Posted by: Chris Hird | September 08, 2009 at 02:32 PM
First, when you say that much of that article was written slightly tongue-in-cheek, it's hard to know what's fair game for discussion.
Second, I too have been following some of these discussions. Most participants on both sides of the debate have a vested interest, so it's hard to get a sense of the true situation. Since I haven't had anything to do with either iSeries or RPG since 2003, perhaps I can lay claim to being an impartial observer. (Although I'm sure some would argue with that!)
You refer to the lukewarm response to Craig's article. As I pointed out on the mailing list, first, of course you can't expect a negative story from a product manager. Second, he only discussed some new customers. He didn't say a word about customer retention, which is perhaps a more important measure of the i's prospects.
Regarding RPG, of course, I wouldn't expect IBM to stop support of RPG until they stop support of the i O/S. But continuing support of the language isn't the same as actively investing in substantial new functionality. Sure, they are still rolling out the occasional new feature in RPG. But do you really think IBM is investing enough in RPG development?
Do an objective comparison of RPG with other modern languages like Java, C#, Python, Ruby, etc. and you'll see how far behind RPG is. Frankly, to me, it's no wonder that some people might think that RPG is on the deprecated list.
Posted by: Hans Boldt | September 08, 2009 at 02:55 PM
I think that for a lot of people it's two things.
First, they honestly don't see a lot of publicity for the i the way you see it for PC's. And part of me understands that but part of me thinks 'no wonder nobody knows about us'.
Second, I know in my case I have seen a lot of former AS/400 shops go to Unix or Windows as they have migrated to more GUI oriented ERP systems. And we remember the friends that we knew who we don't talk to anymore much more than some new person who comes along that we aren't likely to meet (especially if we don't go to COMMON).
Maybe IBM is doing a better job of marketing the i down in the trenches than I think they are. Unfortunately, as with most things--feelings speak louder than facts.
Posted by: David Shirey | September 08, 2009 at 03:38 PM
Jon, I agree with you that RPG *is* getting attention from IBM. The issue is that it has so much track to make up. For years it hasn't gotten attention so average efforts on IBM's part aren't going to make the difference we need.
At the end of the day the RPG compiler team is in a tough spot. They have been forced to "pay their own way" in recent history and that has required they start charging by line item (even ISVs have to pay for the compilers now--I found that out this past week as I am ordering a new dev machine). Now they have to triple check every step they take to make sure they are making the best use of resources (i.e., money/personnel) they have available. Tough spot to be in when the other parts of the machine don't "share". Personally I think the OS/DB/compiler teams should all be in cahoots with each other so they can benefit from each other and continue down the "intimately integrated" route--they can't accomplish the goals business require by separating themselves.
Posted by: Aaron Bartell | September 09, 2009 at 07:31 AM
Ever since around 1990, when PCs started to proliferate and the GUI interface became pervasive, people have been tolling the funeral bells for the System i. Yet here we are 20 years later and the system is continuing to grow, change, expand, modernize and morph .... keeping up with the times better than any other OS around. I guess it proves the rule that "No matter what you do, somebody isn't going to like it".
Posted by: Rich Loeber | September 09, 2009 at 08:13 AM
Regarding the "RPG is doomed" FUD, there are a number of vocal trolls spreading this nonsense who must have been bitten by an AS/400 (or S/36) as a small child.
Posted by: J Taylor | September 10, 2009 at 09:47 AM
J: "FUD"? Much of the current round of discussions regarding the i's future was prompted by a series of blog posts by Bob Cancilla. (http://i-nsider.blogspot.com/) If anyone is in a position to know the thinking at the executive levels of IBM, he certainly is. He sees the withdrawal of the i platform in a few as five years. And of course, if i goes down, so too does RPG.
Is he realistic in his assessment? Or is he just drumming up business for his new employer? We've all heard anecdotal reports about i prospects. Personally, I've heard from one headhunter that i jobs have pretty much dried up in this town of about 3 million people.
Yeah, I know Jon and Susan claim that there are companies with unfilled RPG openings. But isn't that too a symptom of problems?
What's the real situation? I hate to say it, but Bob Cancilla's opinions reek of credibility. In my opinion, nothing I've seen from any IBMer since does much to refute Bob's opinions.
I've opined before that IBM has a delicate balancing act to perform. They know the i business is fading. But they also want to retain customers. That is, if a company moves away from i, they still that company as a customer. On the other hand, IBM can't be seen as encouraging the migration away from i, or else that may spur on a rush away from the platform.
"This is the way the world ends / Not with a bang but a whimper." T.S.Eliot
Posted by: Hans Boldt | September 10, 2009 at 12:13 PM
If migration vendors like Bob Cancilla can convince people that their platform is doomed, it puts enormous pressure on people to utilize their services. Their predictions are self serving, but not in line with mainstream thinking inside or out of IBM.
"The i operating environment is an important, strategic element in the IBM product portfolio and we are making substantial investments in the future of i because its continued success in the market is essential to IBM’s overall business performance." Ross Mauri, General Manager, IBM Power Systems.
During a recent fireside chat with Mauri, someone asked what his favorite operating system was for the Power platform. "I love all my children, equally" was the reply.
Bringing IBM i and AIX under the Power Systems umbrella was a strategic move for both operating systems. An entry-level Model 520 cost less than half that of an entry-level Model 170, but has more than 50 times more CPU power - more evidence that IBM considers IBM i to be strategic. Short-term revenue is taking a hit, but the platform is well positioned to grow, now.
IBM i is somewhat unique in that ISVs take the predominate role in marketing, and current pricing is motivating them to return to it.
Now is not a good time to be in the business of migrating applications off the platform, which may explain why migration vendors are increasing the intensity of their negativity.
-Nathan.
Posted by: Nathan Andelin | September 16, 2009 at 01:33 PM
RPG & Web 2.0:
In a Web 2.0 world, RPG [for us] is the thing that responds to browser events.
By browser events, I mean ANY event - including any keyboard, mouse, or DOM event - not just the submit button.
That may seem like a bold statement, but it's true. I'll explain.
Say a page has a drop-down combo box - a list of organizational entities. RPG might respond to the "select" event by returning a list of GL accounts pertaining to that entity - to fill in an adjacent combo box asynchronously.
In another case, a page might have a list of email messages, where the arrow keys move the highlight bar up or down the list. RPG might respond by returning a complete message - for display in the content pane - when a new message is selected.
A good way to stress-test that application might be to get about 20 users to press and HOLD DOWN an arrow key, all at the same time, and watch messages fly up on the screens in an unreadable blur, as the highlight bars scroll through the list at a rate of about 25 per second.
RPG makes it possible to deploy server-based applications, that offer desktop-like performance.
You might TRY the same thing with another language & web interface, but the interactions are so slow that you don't get the same effect.
Concurrency:
In addition to making it possible to deploy server-based applications that offer desk-top like performance, RPG also takes care of data concurrency issues.
Say a teacher's aid is grading classroom assignments via Web 2.0 interface. The Ctrl-A keystroke selects [and highlights] all students in the class.
The F2 key toggles update-mode on, while the 1st student's assignment record is retrieved & displayed in the content pane.
The Enter key updates the record, the highlight is removed from that line, the grade appears in the list, the next student's record is automatically retrieved & displayed in the content pane.
The aid repeats the cycle for each student, until complete. A lot of I/O [including data & messages] going back & forth between browser & server, all in real-time, using RPG.
If a developer were building the same type of interface, using an Adobe Flex or Microsoft Silverlight client, and interfacing with a .Net service instead of RPG, there would be a strong tendency to download ALL the assignment records to the workstation in one operation, and temporarily store the updates locally as they occur. Then post them to the server as a complete batch, in order to reduce server I/O.
One problem with the latter is that while the data is temporarily on the workstation, there is a potential of it becoming out-of-sync with the server. And responding to errors in a batch is always more difficult and time consuming than responding to individual update requests.
RPG is the better tool.
Native GUI:
The browser interfaces that we've come up with are so streamlined now, that we almost think of RPG as a GUI language. It's cool how one's perception can change.
Our RPG applications respond so quickly to Web 2.0 interfaces that it almost seems like programs are running locally, on a hand-held device, laptop, or workstation.
By indicating that an RPG program may be responding to any keyboard, mouse, or DOM event [even repeating events - like typing or pressing and holding a key down], I don't want to minimize the level of control that RPG programs may have over the interface.
Most of our applications run within a web portal context, where clicking a menu item generally launches a new instance of an application [starts a new IBM i job] for an individual user, which has an initialization step where HTML templates and database tables are opened, and a connection to an SQL Server prestart job may be instantiated. That takes 1-2 seconds.
The program displays an entry-point page, then waits for any kind event from the browser. The server is in complete control of how it responds to every event thereafter, and may even decide to output code that automatically triggers new events, itself. In many ways, the browser is subordinate to the server.
Until the user clicks the "Exit" link - at which time, the program releases all its resources and the job ends.
But under a web portal context, users may simply keep any number of programs active, and toggle between any of them and the menu system, by just one click. The portal automatically retains the state of each application where it left off.
On the other hand, a portal administrator may configure any application to end automatically after a period of inactivity.
Hopefully, some old perceptions about RPG are fading, and new ones are becoming more clear.
-Nathan.
Posted by: Nathan Andelin | September 16, 2009 at 05:23 PM
Should business-application developers be using low-level languages - particularly those tied to a specific platform? Isn't that how RPG is perceived?
The term "low-level language" generally conjures up images of verbose [tedious, inflated] code. But RPG doesn't fit that image - particularly when it concerns screen & database I/O.
The code we see in other languages, used to establish database connections, to format SQL statements, and perform I/O operations is generally a lot more tedious than what you see in RPG.
RPG's operation codes are high-level, and RPG's built-in functions are as streamlined as those found in other high-level languages.
On top of that, ILE RPG programmers write their own procedures, which often turn out to be a chain of wrappers over other procedures, so that top-level procedures may be packed with utility, and called from many applications.
The RPG templates that we use for full-featured Web 2.0 database inquiry & maintenance applications, which follow a modular MVC design pattern, sum to about 600 lines - including comments.
Most organizations that get into cross-platform development, end up deploying their applications to just one platform, and their database to another.
There are a lot of hidden costs in any attempt to support multiple platforms, and making the attempt generally overextends the resources of that organization.
Rather than looking at a platform-specific language in a negative light, one might consider looking at it as a cost savings - a big one.
-Nathan
Posted by: Nathan Andelin | September 16, 2009 at 05:42 PM
About 10 years ago Microsoft ticked-off a lot of VB developers by failing to provide a decent migration path from desktop applications to ASP .Net. Now they're poised to do the same, as their strategic focus changes from Web-Forms to Silverlight.
If that's not bad enough, it appears that Microsoft has really missed the boat with Silverlight - as a replacement for Web-Forms.
Silverlight is largely an imitation of Adobe FLEX, so let's begin with FLEX.
BTW, Microsoft has really positioned itself as an imitator - rather than an innovator, across a broad range of technology.
Anyway, Adobe provides an appealing drag-and-drop interface for building FLEX forms. The problem is that dropping a combo box on a form adds about 100K to the application, dropping a radio button adds about another 100K, and dropping a text box adds about another 100K - you get the drift.
Our technology leaders have returned to HEAVY desktop deployments - except this time they download applications over the wire, rather than distribute them on hard-copy media.
A FLEX developer recently asked "How do I reduce the size of my 40MB SWF?". Browsers would wait 20 minutes while downloading the application - which was repeated every time they cleared cached files.
One reason for returning to THICK desktop clients appears to be that organizations like Microsoft never really figured out how to effectively manage state in Web applications, which becomes more tricky, and critical, as applications become more complex.
The way to manage state is 2nd nature to RPG programmers. They don't even think about it. Am I right?
Anyway, this appears to me to be a good time to start thinking about getting organizations off the Microsoft merry-go-round, and move them to IBM i.
Microsoft has an insatiable appetite for CPU and memory. They always push the limits of whatever machine they're running on - ranging from handhelds, to netbooks, to desktops, to servers.
Their software drives up the cost of computing. In most organizations, the total cost of personal devices, far outweighs the cost of servers.
Consider the resource requirements of Windows Vista. Compare that to SUSE Linux.
There is real potential for ROI in migrating applications from Windows, to an IBM i server, and switching out Windows Vista clients, in favor of a favorite flavor of Linux.
The IBM i native environment facilitates this by enabling the deployment of server-based applications, which have the performance characteristics of desktop applications - when using the right interfaces.
Linux facilitates this by supporting somewhat scaled-back desktop software, on workstations that cost about half that of a Windows Vista machine. And when you really get into Linux, you begin to see that you're not giving up that much, in many cases. Well, you may be giving up your virus checker ;-)
Consider the ROI.
-Nathan
Posted by: Nathan Andelin | September 16, 2009 at 05:49 PM