Unconfigured Ad Widget

Collapse

Announcement

Collapse
No announcement yet.

Ask Not What You Can Do for RPG but What RPG Can Do for You!

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Ask Not What You Can Do for RPG but What RPG Can Do for You!

    ** This thread discusses the article: Ask Not What You Can Do for RPG but What RPG Can Do for You! **
    ** This thread discusses the Content article: Ask Not What You Can Do for RPG but What RPG Can Do for You! **
    0

  • #2
    Ask Not What You Can Do for RPG but What RPG Can Do for You!

    ** This thread discusses the article: Ask Not What You Can Do for RPG but What RPG Can Do for You! **
    I agree with your comments and appreciate your comittment to the IBM I series. The next book you publish Bob should include examples of some of the techniques you discussed in this article. By the way an express 515 configuration 1, 5 user system with wds is coming in the door at $15,000 list, This is a little more than the $7,000 number being tossed around. Sure would be awsome if the true dollar figure was $7000.00

    Comment


    • #3
      Ask Not What You Can Do for RPG but What RPG Can Do for You!

      ** This thread discusses the article: Ask Not What You Can Do for RPG but What RPG Can Do for You! **
      IBM's marketing and education bears all the responsibility for not creating the appropriate image for AS/400, i-server, System/i and whatever else they decide to call it. If such a great product is lacking awareness in the marketplace, you can't blame the marketplace. IBM seems to have missed the organizational change in the 80's, techies no longer run the IT department! The point is not to assign fault, but to fix it. It's not the technical department but the marketing and the education department that have to fix the system's image with FREE education, seminars, real incentives (i.e. free systems for 1 year), etc. Think in terms of a new product launch - not a new name gimmick. After all, Windows never changed it's name and it doesn't seem to bother anyone.

      Comment


      • #4
        Ask Not What You Can Do for RPG but What RPG Can Do for You!

        ** This thread discusses the article: Ask Not What You Can Do for RPG but What RPG Can Do for You! **
        AS/400 community is full of what I call "Legacy Managers". Guys who are either unwilling (believe in "security thru obscurity") or unable to modernize their applications. Sooner or later he/she gets fired and I dont shed a tear on him/her. Unfortunately they also take down the AS/400 shop with them. Then there are "Legacy Evangelists". These guys are very active on message boards preaching legacy. Any suggestion of modernization is sacrilege and you shall face the wrath of them. I have been chased for just talking of "Externalizing I/O", replacing subroutines with subprocedures, getting SQL embedded, using /free etc. Not to mention the shred of suggestion of using Websphere. A while ago, when Bob asked something like "Are we ready for /free?", my comment was "Oh gross, now we have Legacy Gurus". My apologies for this abrupt comment as Bob later wrote a lot about modernization. This eased up my brick battling with my "legacy colleagues" who used the article as a justification for not mordernizing. Before telling IBM to invent things, I will ask my legacy friends, "How well have we used the products IBM has launched so far?".

        Comment


        • #5
          Ask Not What You Can Do for RPG but What RPG Can Do for You!

          ** This thread discusses the article: Ask Not What You Can Do for RPG but What RPG Can Do for You! **
          That was quite a statement ! I know the iSeries (is it still called that these days ?) is capable of doing those things but the reason I think that development work is not being done on the iSeries is because of "legacy" apps. Yes, you could go through the process of web enabling all or some of your legacy apps but to me, that still leaves legacy apps that fall short of the newer apps that are more tightly integrated on other platforms. I just don't think that SMB wants or needs to be in the software development industry when the newer apps can resolve many issues at a lower cost.

          Comment


          • #6
            Ask Not What You Can Do for RPG but What RPG Can Do for You!

            ** This thread discusses the article: Ask Not What You Can Do for RPG but What RPG Can Do for You! **
            I notice with amusement that Bob is recommending embedding SQL in RPG code … d’oh! It seemed like a good idea in the modern world too until you realize that embedded SQL can easily be subverted: imagine embedded SQL to return the account data for a particular customer “secured” by a password, embedded SQL would probably look something like this: SELECT * FROM Accounts WHERE Account LIKE ‘[name]’ AND Password = ‘[password]’ with name and password being replaced by user-supplied variables. If I even suspect you are doing this, I can defeat this SQL by entering the name correctly and the password as ‘ OR 1=1 ’, giving us the statement SELECT * FROM Accounts WHERE Account LIKE ‘UserName’ AND Password = ‘’ OR 1=1, which will happily supply me with your account details without me knowing the password. The best way to beat this kind of attack, Bob, is to use stored procedures and not embed your SQL. He also dismisses the convoluted PC / AS/400 web solution as a bad solution. It is. But it is just that: a bad solution. Bob however seems to confuse the implementation technology with poor design whereas this is really an example of idiotic design rather than poor technology choice. Interestingly enough, he also misses an opportunity to really stretch what RPG can do: he suggests returning an HTML page / PDF from an Apache web server on the AS/400 direct to the browser; I would argue that he’s even better off creating a web service on the AS/400 Apache web server to return the invoice details rather than HTML/PDF: that way, his AS/400 is not exposed on the web, he is not tied to returning only HTML or PDF and he has the flexibility of returning invoice data to any application anywhere in his organization (or externally). In this scenario, another web server would service requests from web browsers, call the AS/400 web service and format the reply into HTML / PDF. Any Turing-complete programming language can perform pretty much the same tasks but with varying degrees of efficiency, elegance and maintainability. Taking Bob’s arguments to their logical conclusion, we could ask why he doesn’t just program in machine code: this can after all perform any task any higher level language can as all these languages are eventually reduced to machine code anyway. So why not, Bob? Because it’s more efficient, elegant and maintainable to use a higher level language better suited to the way humans think and solve problems and then translate it for the machine rather than force humans to think like machines. The advantage to OO development is that it allows us to define and encapsulate complex problems in very human terms that we can easily understand and manipulate promoting efficiency, elegance and maintainability. This is not to say that the AS/400 should be dismissed as a technology platform and Bob is right that bad management decisions can end up throwing the baby out with the bathwater but the real question for me is: just what is Bob afraid of? Sounds to me that just like the managers he is so dismissive of, Bob just doesn’t understand the technology. Andrew

            Comment


            • #7
              Ask Not What You Can Do for RPG but What RPG Can Do for You!

              ** This thread discusses the article: Ask Not What You Can Do for RPG but What RPG Can Do for You! **
              I really enjoy the articles on MC Press and this article is no exception. However, I think the last few comments about .Net and Networking people knowing only how to "reboot" is very harsh and bigoted. I have worked with some extremely competent Networking people and .Net programmers. Though I am a traditional Midrange/RPG developer (25+ years on S34, S36, AS400/iSeries/i5), I have recently (almost 3 years now) been developing new browser-based applications using VB.Net/ASP.Net on the "front-end" and iSeries/DB2400 on the "back-end". The marriage of these "competing?" technologies has been a great asset to our organization. I remember feeling like a "novice" (despite 22+ years of professional experience) when first developing with Visual Studio and I owe a lot of my initial learning to those competent .Net developers. They also learned a lot from me. I do confess that our initial biases (me for iSeries, them for MS technologies) was a hurdle that we had to overcome, but the end result was well worth some of that initial pain. What we need today is more collaboration and teamwork and less "bashing" of one another. I realize that our beloved platform is more often on the receiving end of the "bashing", which raises our emotions and causes us to become defensive, but we all need to strive to become agents of change.

              Comment


              • #8
                Ask Not What You Can Do for RPG but What RPG Can Do for You!

                ** This thread discusses the article: Ask Not What You Can Do for RPG but What RPG Can Do for You! **
                I have heard the phrase, "but it can't do that", so often in the past 10 years from colleagues that I think they live in an environment where it's always 1990. I understand it from those who know little or nothing about the i but it drives me crazy when I hear it from experienced i programmers. Need web pages? Not on the 400. Need to send email? Not on the 400. Most of these people aren't even active in forums such as this. It's still 1990, Bush Sr. is still the President, the 49ers are still a good football team, a U.S. first-class stamp is still a quarter, and Wind beneath My Wings is still a hit song. Now, don't mistake me for an inexperienced programmer who wants everyone to get modern and forget the old ways. I started programming on punched cards but I would never program that way today. To those stuck in 1990, although you won't see it because you're not on the internet: If you're tired of learning new ways and just waiting for retirement, find something else to do. You're a drag on acceptance of the i as a capable, modern, platform. Rant is complete. Thanks Bob. Tom.

                Comment


                • #9
                  Ask Not What You Can Do for RPG but What RPG Can Do for You!

                  ** This thread discusses the article: Ask Not What You Can Do for RPG but What RPG Can Do for You! **
                  Andrew, If I even suspect you are doing this, I can defeat this SQL by entering the name correctly and the password as ‘ OR 1=1 ’, giving us the statement SELECT * FROM Accounts WHERE Account LIKE ‘UserName’ AND Password = ‘’ OR 1=1 It depends. If the SQL statement uses host variables or ? parameter markers, then your method of SQL Injection won't work (but nice try). If instead the programmer just builds a giant SQL statement in a string with the values already concatenated in, prepares and executes that, then yes, your SQL injection might work. A good programmer would delimit that password string value with single quotes, and double up the embedded quotes so it would look more like this: Password = ''''' OR 1=1' Chris

                  Comment


                  • #10
                    Ask Not What You Can Do for RPG but What RPG Can Do for You!

                    ** This thread discusses the article: Ask Not What You Can Do for RPG but What RPG Can Do for You! **
                    aleisk wrote "I notice with amusement that Bob is recommending embedding SQL in RPG code … d’oh! It seemed like a good idea in the modern world too until you realize that embedded SQL can easily be subverted: ..." Andrew: What you describe is called "SQL injection". There are a couple of responses to your concerns. First, it affects dynamic SQL, and not the static SQL used in most RPG programs. Second, the risks are well enough known that most SQL programmers know that passing unchecked data into SQL statements is a big no-no. (If you need a refresher, the Wikipedia entry on SQL injection discusses ways to avoid the problems.) Cheers!

                    Comment


                    • #11
                      Ask Not What You Can Do for RPG but What RPG Can Do for You!

                      ** This thread discusses the article: Ask Not What You Can Do for RPG but What RPG Can Do for You! **
                      those .NET or network people who really don't know how to do anything except reboot the server, reinstall software, and fabricate myths about the System i. After all, these people don't know jack about IT to begin with, so why would they know anything about a real computer?
                      I must say I was very disappointed by this comment. I found it to be extremely unprofessional. No where did it say this article was an editorial opinion piece, and even if it had, that comment was simply rude and completely uncalled for.

                      Comment


                      • #12
                        Ask Not What You Can Do for RPG but What RPG Can Do for You!

                        ** This thread discusses the article: Ask Not What You Can Do for RPG but What RPG Can Do for You! **
                        I don't think it's any more harsh than the opinion that the majority of all non AS/400, iSeries, or i5 people have towards the System i and the people who work on it. I think the general consensus among those people is that we are a second class or obsolete civilization. Who's feelings do you think hurt more? The .Net developer who was just insulted by what Bob said, or the RPG programmer who was just laid off because some hun-yuk up the ladder thinks, or was groomed to think that the System i and RPG aren't capable of performing in the modern era.

                        Comment


                        • #13
                          Ask Not What You Can Do for RPG but What RPG Can Do for You!

                          ** This thread discusses the article: Ask Not What You Can Do for RPG but What RPG Can Do for You! **
                          Bob, I applaud and rejoice every time I read something positive about the AS/400. When you put these kind of things out there, I was right there with you. I do this because this is what I am looking for. I got into this arena of business application development in 1997, your reputation as presented to me at that time was of a arrogant know it all, who did know quite a lot, so I have paid attention to you for these last 10 years looking for and harvesting all of the little gems you have laid out there for us. I would have thought you would have basked in the praises of those whose so willing have lined up to praise you for the good you have done. I can't believe you chose to leave this avenue with a baseless attack that you give no creditbility for in your article. Even looking at your article as an essay, what are you trying to say? We can't win, but you are stupid? Your farewell technical article does nothing for the advancement of the AS/400 or the advancement of my chosen proffession: Business Application Developer on the AS/400 using RPGIV/ILE with Structured Methodology and Quasi-Object Orientation in a Cross Platform Environment embracing Best of Breed Practices. You coulda had a V8. You coulda finished in Glory, instead of the Gutter. I guess those people ten years ago were right. Craig

                          Comment


                          • #14
                            Ask Not What You Can Do for RPG but What RPG Can Do for You!

                            ** This thread discusses the article: Ask Not What You Can Do for RPG but What RPG Can Do for You! **
                            "I understand it from those who know little or nothing about the i but it drives me crazy when I hear it from experienced i programmers"
                            I think you are confusing "Experienced" with "Legacy" programmers My counterpart in the consulting company has 25 some years of "experience" in RPG. He can not do IFS ... let us go back to 2001 ... can not do /free ... no let us go further back to 1996 ... can not do ILE ... no no let us go back to day one ... can not do embedded SQL. He is allergic to the term "Modernization" and in addition to being a Legacy Programmer, he is also a Legacy Evangelist preaching legacy with his sermons full of thunder of bombastic words and articulation. Sounds familiar? Moral of the story is, Legacy programmers are not experienced enough to know what System i can do

                            Comment


                            • #15
                              Ask Not What You Can Do for RPG but What RPG Can Do for You!

                              ** This thread discusses the article: Ask Not What You Can Do for RPG but What RPG Can Do for You! **
                              Hassan, Is he still using indicators and RPGII code? One of my contemporaries still codes like that. His reason? It works just as well as anything else and "you can't teach an old dog new tricks". Yes you can! He is 59 yrs old. His employer keeps him on because the main manufacturing package the company is still using is written in RPGII. Everything else the company uses is on Microsoft networks. They will be replacing their manufacturing system and will be looking to replacing their old programmer. He thinks he'll find more work. I think he's crazy. I always thought that legacy, experienced, old and grey-haired were all synonyms. Even though I can do all that you mention, and more, I get people who wonder if I'll live long enough to finish the project and if I'll understand modern concepts. I think they also think that I need help with my morning oatmeal. As long as I don't take on any multi-year projects, it'll be OK. ;}. Once they realize that I can take on anything they throw at me, everything's fine. But it's frustrating to have many of my contemporaries be the person you outline because it reinforces a very negative image. Tom.

                              Comment

                              Working...
                              X