|
There is an area that I consider to be much more dangerous than Mr. Paris' sentiment is your statement of: "If I am a shop that's running just ducky on RPG II style code, and I have programmers who program that way, and we're making our numbers and beating our competition and doing what we need to do, then how can you possibly justify making us change our ways?" I will tell you now, that with sentiments like those above, your corporate management will begin to go around you to look for other ways to solve complex business problems - and the solutions they come up with will not be to your liking. There are 100's of thousands of IT professionals out of work today - simply because they thought that staying static in the approach to business would keep them employed. Those that do not understand how to integrate IT solutions in a global sense, and make full use of the tools provided for that solution, preach and propose the brand new technology as a way out of the "old antiquated RPG code". These people are the ones being listened to in business today - to the detriment of business and our professional lives. We as professionals make every attempt to hone and improve our skill sets. The only ones that prefer to not "change our ways" are those that have no initiative and understanding of the products that they produce. However, the most dangerous aspect is how those that prefer to remain in the RPG II world instead of progressing have hamstrung those of us that wish to grow and improve not only ourselves but the companies we work for. A true story: A company spent millions of dollars designing, developing, and testing a very flexible, powerful, and user friendly rules engine. It was designed around their business and would permit them to move rapidly to changing business trends. On the day of deployment - it crashed the production system. Everything ground to a halt. 10's of 1000's of people were left stranded without an ability to effectively perform their jobs - not just the ones that would eventually rely on the new product. You might ask: What was this method used to create such a wonderful product that so devastatingly impacted the business? The answer is to complex to respond here. I know that the method used was done because it "appeared" to be the best approach with the highest return on the investment. What was lacking in the overall strategy behind the development and deployment of the product was the examination and real-life consideration of the RPG/ILE platform for use in the product. It failed as a strategic tool simply because of the statement you made. Those individuals that failed to examine the strengths of the platform and opt to pursue its use on its own merits did so because they did not understand the strength, integration capability, and that the hardware platform was tuned to make use of those strengths in the first place. If all the capability of the ILE environment (and specifically the RPG/ILE environment) had been considered, it would have been the platform of choice. We are now reaping the benefits of those that wish to not "change our ways" because, to truly use and make use of the full capabilities of the ILE environment, requires a leap that simply cannot be made by most of those that have learned the old ways of RPG development. I am not advocating that all business solutions are easily solvable by RPG/ILE alone - there are other products/languages that are better suited to solving many of today's business challenges - Java, XML, etc. But before you decide on a single course of action - make sure you understand the ramifications of "choosing" that action. - Jim -----Original Message----- From: rpg400-l-bounces@xxxxxxxxxxxx [mailto:rpg400-l-bounces@xxxxxxxxxxxx] On Behalf Of Joe Pluta Sent: Friday, April 25, 2003 5:22 PM To: RPG programming on the AS400 / iSeries Subject: RE: Free Form RPG Opinions Wanted > From: Jon Paris > > I think one can make the argument that in some ways the on-going upward > compatibility that RPG has given us over the years has done more harm than > good. Too many people still code RPG II (they just use RPG IV syntax). I > think it is about time that there _were_ features that can only be used if > you embrace their intent. Jon, you know I have great respect for you, but this is possibly one of the most dangerous sentiments I've ever heard. If I am a shop that's running just ducky on RPG II style code, and I have programmers who program that way, and we're making our numbers and beating our competition and doing what we need to do, then how can you possibly justify making us change our ways? Just because you, Jon Paris, don't like the MOVE instruction? Now doesn't that strike you as a tad arrogant on your part? Do you plan to come in and teach my programmers the new syntax for free? Will you pay for the retesting that's required on applications that have worked for years? Jon, I'm disappointed with you. No, I'm saying that as you add new things to the language, if it's just as easy to make them available in RPG IV as it is in RPG FF, then please do so. After some serious consideration, I'm really of the mind that the only thing you get from RPG FF is indent/undent and a few extensions to the base opcodes. And it costs you semi-colons, loss of function on a number of BIFs (for example, DIV and REM) and the loss of the MOVE instruction. For someone who hates MOVE (and doesn't care about anybody else) then this might be a good thing. But I just don't see the justification. If the extended factor two were supported on RPG IV, then we'd have the best of both worlds, and if you really, really needed indent/undent, you could do it, while my example client above wouldn't be disallowed the use of the new features. I can't see how anybody who isn't thinking entirely self-centrically (and just a little bit Elite Architect-ish) wouldn't think this is a good thing. > Any op-code that requires you to know the exact data type and size of both > fields before you know what the hell will happen is in my opinion a bad > idea. I'm not being flip here, but why should it matter what you think about the MOVE opcode? Isn't that assigning an awful lot of weight to your viewpoint? Because I would counter that any programmer who doesn't understand every opcode he uses and the side effects thereof is in my opinion a bad programmer. This isn't kid stuff, it isn't supposed to be easy, and if you can't take the time to look at a compile listing, then you ought to be thinking about alternate lines of employment. This silly notion that every line of code ought to be self-documenting is the single stinkiest pile of dung I've smelled in a loooooooooong time. If you write code that's even a little bit unusual, write a comment. THAT'S WHY LANGUAGES HAVE COMMENTS. "But comments get out of date." Not if you fire the lazy, incompetent programmer that didn't update the comment when they changed the code. Self-documenting code is for the button pushers - the ones who want to point their mouse at pretty icons on a screen and have it develop an ERP application for them. And you know, you may get it, on account of people who are willing to have slightly less efficient code and slightly less powerful compilers, in order to make their jobs "easier", so they don't have to actually think about it. They'll plug together bloated, stupid modules and get mediocre results quickly, and after a while everyone will think that that's what programming is. And when it gets to that point, where programming is semi-skilled labor, programming jobs will zoom out of this country so fast you won't even hear 'em leave. And I guarantee you will miss the MOVE instruction then. > I may pose a few questions to the attendees at next weeks RPG World > conference and see what they think. So far I've presented the V5 stuff to > about 2,000 plus people. Very few have ever complained about the MOVE > op-code and those that have once they think about it tend to go > "yea! it is > a bit sneaky isn't it - I got caught badly by that x weeks ago" Jon, I've been involved in the development of hundreds of millions of lines of code - you know that - over decades, and never, ever has one of my projects been bitten by a MOVE. The one we has last month with the negative sign was truly the first time a MOVE opcode ever was "too sneaky" for me. Honestly. But then again, I have a policy of beating programmers who write "cute code" with a stick. Just remember, it isn't the MOVE that kills programs - it's the programmer who uses the MOVE. Okay, enough. The horse is dead. I have my viewpoint. I am going to stump for am extended factor 2 syntax and a %MOVE BIF. I'll be amazed if I get them, and disappointed if I don't, but at least I've come up with a compromise - a compromise that helps some people, harms nobody, and yet the "3l33t d00dz" of RPG don't want to hear. <<sigh>> Joe _______________________________________________ This is the RPG programming on the AS400 / iSeries (RPG400-L) mailing list To post a message email: RPG400-L@xxxxxxxxxxxx To subscribe, unsubscribe, or change list options, visit: http://lists.midrange.com/mailman/listinfo.cgi/rpg400-l or email: RPG400-L-request@xxxxxxxxxxxx Before posting, please take a moment to review the archives at http://archive.midrange.com/rpg400-l.
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.