Wed, Jul
0 New Articles

Are RPG Programmers RPG's Worst Enemy?

  • Smaller Small Medium Big Bigger
  • Default Helvetica Segoe Georgia Times

When you try to use new techniques and technologies, do you get resistance from your own staff?


Are you an RPG programmer who is dealing with resistance to updating your RPG skills from people in your staff or even management within your staff? Well, you're not alone.


I felt compelled to write this article because I have received several emails from people who are interested in updating their RPG skills, but the environment that they work in discourages skill advancement. Recently, I received a message from someone who is literally on the other side of the planet and is experiencing this kind of oppression in his shop and other shops that he's worked in.

My Story

I started my RPG programming career with a small staff of three, including my boss. Having my boss on the programming team was good in a way because he made sure that the importance of the IBM environment was properly represented to upper management. But it was bad in a way because he had absolute control over the way things were done and he did not allow any programming methods to be implemented that were beyond his skill set. So the implementation of modern techniques had a ceiling that matched the boss's knowledge level.


This frustrated me for a very long time. As my boss started climbing up the corporate ladder, his interest in updating his programming skills became less of a priority, and we became stagnant for quite some time. But eventually he started to loosen the reins, and after a few years I was able to start implementing some ILE methods, and I dove into procedures, activation groups, and service programs. That kept me humming along for a while.


After I proved myself in the areas of ILE, I was then able to start using embedded SQL within RPG. This was a great stride for me because I was happy to gain experience in this area. But the bad part was that I was the only one capable of maintaining these programs. The other programmer that worked with me started to pick up on it but didn't really have the interest. So whenever there was a need for new development, maintenance, or support, I was the man. I guess my ambitions to evolve beyond the boss's skill set started to bite back at me there.


My real sights were targeted at putting a GUI on the AS/400. I was pushing for Java for at least eight years before I got my shot. After years of teaching myself Java after hours and working toward certification and doing Java projects on the side, I was never able to get that production experience until the very end of my time on the system. The budgets were very tight, and we had a project that demanded integrating Microsoft SQL with DB2; it also needed to run on both Windows and Macintosh machines. Revenue was being lost without it. I raised my hand, and they finally let the dog off the chain!


I had a good run with that. I struggled a bit here and there, but I was prepared and worked through my issues. And after some time, the software was released and new reports were being produced in Excel and PDF and being distributed through email. But little did I know that the wheels were already in motion to replace the system.


That's my story up to that point. Now let me tell you about some of the tribulations that my new friend on the other side of the planet is experiencing.

From a Friend

My friend's challenges may sound familiar to other RPG programmers facing similar situations. His story is more extreme than mine. But I understand where he is coming from; he has the desire to modernize but is constantly battling against his own manager to do it. I found his story to be particularly interesting because when I was going through my struggles, I thought that maybe it was just the shop I was working in. Or maybe it was the mindset of the city that I was living in. But to hear about the oppression of modernization in a shop in a completely different country on the other side of the world made me wonder if this is a common theme for RPG programmers.


Here is a quote that my friend felt important to express, so I'll keep it as is: "HR departments have become anathema to technical progress, because they've made being a team player more important than knowledge and mastery. If one team member moves too far away from the accepted norm then that person is out." His point struck home with me: I literally had face-to-face shouting matches with our HR department, and I'm sure they were always gunning to fire me. I could feel my friend's frustration. Why is it that you can be made to feel wrong for wanting to make things better? And if another person in your staff doesn't care to update his skills, why should you be looked down upon for being motivated?


Here is another quote: "There is an in-built conservative flywheel that ensures that progressive ideas move at a snail's pace. I've read a few articles over recent months saying that the pendulum is swinging back and managers are staring to put technical prowess on an equal footing to being a 'team player.' " I have to say, in every job I've had after my oppressive days, motivation is actually required.


So what has my new friend had to deal with?


When he was developing an email application, the boss saw the messages and forbade him from doing anything else with email.


When he was using SQL and tried to pass the knowledge to the rest of the staff, he was competing against other programmers who were pushing Query/400 instead and claiming that SQL was dangerous. He was fighting a losing battle.


When he was beginning to use Qshell, another programmer asked, "Why would we ever use that?" to discourage the use of it anywhere.


The use of free-formatted programming was discouraged because the boss said that fixed-format was easier to read. Of course it was for him! It's all he was familiar with, and he was unwilling to learn free-format.


My friend also started developing procedures and service programs, but they were declined in favor of COPY.


There was quite a bit of frustration, and he made a good closing point that the technologies are there, but the boss won't let him use them.

The Other Side of the Coin

You may be reading this article and saying, "Where is this supposed oppression going on?" And if that's the case, I am very happy to hear it! I'm hoping that not everyone reading this article will be nodding their head in agreement.


I posted an article about a year ago, "Being an RPG Programmer in Today's World," that talked about being an unemployed RPG programmer and then landing a job programming in Java and C#. It was a good experience, but a lot has changed since then, and I'm back to coding in RPG. And I'm in a shop that encourages the use of embedded SQL with free-formatting, with sights on putting a GUI on the system.


There is a great mix of Windows and IBM i experts who work together. There are people with different programming styles working in harmony, both inside and outside the RPG programming realm. I was blown away when I attended one of our first meetings and the same guys who maintain the network were talking about output queues and then switching the topic right over to VOIP. I guess after dealing with the segregation between Windows staff and IBM staff, I found a great appreciation for the lack of discrimination.

Final Thoughts

There are too many people out there claiming that RPG is outdated and we should give up. That's just not true. RPG has all the tools; we just need to overcome whatever is holding us back and start using them!


And if you're one of the programmers who has forged ahead and advanced your skills, think about the way you interact with the rest of the staff. When someone who has advanced to the next level talks to me in a condescending tone to make me feel inferior, it just rubs me the wrong way and does not encourage me to excel. In fact, this behavior typically pushes me back instead of forward. I would much rather hear someone say, "Look at this cool new thing! Let me show you how to do it and why I found a reason to use it!"


When I first met my friend via email, I thought that he was new to RPG and just starting out—not because of his knowledge but because of his drive. Then I found out that he has been coding RPG for over 40 years! And he is now working on setting up a server to run PHP. His efforts to integrate RPG with Java have been put on hold because his boss prohibited it, but he is still pushing forward with PHP. I admire his perseverance and passion for programming. This guy really needs to be turned loose on an IBM i with no restrictions.


as/400, os/400, iseries, system i, i5/os, ibm i, power systems, 6.1, 7.1, V7,


Thomas Snyder

Thomas Snyder has a diverse spectrum of programming experience encompassing IBM technologies, open source, Apple, and Microsoft and using these technologies with applications on the server, on the web, or on mobile devices.

Tom has more than 20 years' experience as a software developer in various environments, primarily in RPG, Java, C#, and PHP. He holds certifications in Java from Sun and PHP from Zend. Prior to software development, Tom worked as a hardware engineer at Intel. He is a proud United States Naval Veteran Submariner who served aboard the USS Whale SSN638 submarine.

Tom is the bestselling author of Advanced, Integrated RPG, which covers the latest programming techniques for RPG ILE and Java to use open-source technologies. His latest book, co-written with Vedish Shah, is Extract, Transform, and Load with SQL Server Integration Services.

Originally from and currently residing in Scranton, Pennsylvania, Tom is currently involved in a mobile application startup company, JoltRabbit LLC.

MC Press books written by Thomas Snyder available now on the MC Press Bookstore.

Advanced, Integrated RPG Advanced, Integrated RPG
See how to take advantage of the latest technologies from within existing RPG applications.
List Price $79.95

Now On Sale

Extract, Transform, and Load with SQL Server Integration Services Extract, Transform, and Load with SQL Server Integration Services
Learn how to implement Microsoft’s SQL Server Integration Services for business applications.
List Price $79.95

Now On Sale



Support MC Press Online


Book Reviews

Resource Center

  • SB Profound WC 5536 Have you been wondering about Node.js? Our free Node.js Webinar Series takes you from total beginner to creating a fully-functional IBM i Node.js business application. You can find Part 1 here. In Part 2 of our free Node.js Webinar Series, Brian May teaches you the different tooling options available for writing code, debugging, and using Git for version control. Brian will briefly discuss the different tools available, and demonstrate his preferred setup for Node development on IBM i or any platform. Attend this webinar to learn:

  • SB Profound WP 5539More than ever, there is a demand for IT to deliver innovation. Your IBM i has been an essential part of your business operations for years. However, your organization may struggle to maintain the current system and implement new projects. The thousands of customers we've worked with and surveyed state that expectations regarding the digital footprint and vision of the company are not aligned with the current IT environment.

  • SB HelpSystems ROBOT Generic IBM announced the E1080 servers using the latest Power10 processor in September 2021. The most powerful processor from IBM to date, Power10 is designed to handle the demands of doing business in today’s high-tech atmosphere, including running cloud applications, supporting big data, and managing AI workloads. But what does Power10 mean for your data center? In this recorded webinar, IBMers Dan Sundt and Dylan Boday join IBM Power Champion Tom Huntington for a discussion on why Power10 technology is the right strategic investment if you run IBM i, AIX, or Linux. In this action-packed hour, Tom will share trends from the IBM i and AIX user communities while Dan and Dylan dive into the tech specs for key hardware, including:

  • Magic MarkTRY the one package that solves all your document design and printing challenges on all your platforms. Produce bar code labels, electronic forms, ad hoc reports, and RFID tags – without programming! MarkMagic is the only document design and print solution that combines report writing, WYSIWYG label and forms design, and conditional printing in one integrated product. Make sure your data survives when catastrophe hits. Request your trial now!  Request Now.

  • SB HelpSystems ROBOT GenericForms of ransomware has been around for over 30 years, and with more and more organizations suffering attacks each year, it continues to endure. What has made ransomware such a durable threat and what is the best way to combat it? In order to prevent ransomware, organizations must first understand how it works.

  • SB HelpSystems ROBOT GenericIT security is a top priority for businesses around the world, but most IBM i pros don’t know where to begin—and most cybersecurity experts don’t know IBM i. In this session, Robin Tatam explores the business impact of lax IBM i security, the top vulnerabilities putting IBM i at risk, and the steps you can take to protect your organization. If you’re looking to avoid unexpected downtime or corrupted data, you don’t want to miss this session.

  • SB HelpSystems ROBOT GenericCan you trust all of your users all of the time? A typical end user receives 16 malicious emails each month, but only 17 percent of these phishing campaigns are reported to IT. Once an attack is underway, most organizations won’t discover the breach until six months later. A staggering amount of damage can occur in that time. Despite these risks, 93 percent of organizations are leaving their IBM i systems vulnerable to cybercrime. In this on-demand webinar, IBM i security experts Robin Tatam and Sandi Moore will reveal:

  • FORTRA Disaster protection is vital to every business. Yet, it often consists of patched together procedures that are prone to error. From automatic backups to data encryption to media management, Robot automates the routine (yet often complex) tasks of iSeries backup and recovery, saving you time and money and making the process safer and more reliable. Automate your backups with the Robot Backup and Recovery Solution. Key features include:

  • FORTRAManaging messages on your IBM i can be more than a full-time job if you have to do it manually. Messages need a response and resources must be monitored—often over multiple systems and across platforms. How can you be sure you won’t miss important system events? Automate your message center with the Robot Message Management Solution. Key features include:

  • FORTRAThe thought of printing, distributing, and storing iSeries reports manually may reduce you to tears. Paper and labor costs associated with report generation can spiral out of control. Mountains of paper threaten to swamp your files. Robot automates report bursting, distribution, bundling, and archiving, and offers secure, selective online report viewing. Manage your reports with the Robot Report Management Solution. Key features include:

  • FORTRAFor over 30 years, Robot has been a leader in systems management for IBM i. With batch job creation and scheduling at its core, the Robot Job Scheduling Solution reduces the opportunity for human error and helps you maintain service levels, automating even the biggest, most complex runbooks. Manage your job schedule with the Robot Job Scheduling Solution. Key features include:

  • LANSA Business users want new applications now. Market and regulatory pressures require faster application updates and delivery into production. Your IBM i developers may be approaching retirement, and you see no sure way to fill their positions with experienced developers. In addition, you may be caught between maintaining your existing applications and the uncertainty of moving to something new.

  • LANSAWhen it comes to creating your business applications, there are hundreds of coding platforms and programming languages to choose from. These options range from very complex traditional programming languages to Low-Code platforms where sometimes no traditional coding experience is needed. Download our whitepaper, The Power of Writing Code in a Low-Code Solution, and:

  • LANSASupply Chain is becoming increasingly complex and unpredictable. From raw materials for manufacturing to food supply chains, the journey from source to production to delivery to consumers is marred with inefficiencies, manual processes, shortages, recalls, counterfeits, and scandals. In this webinar, we discuss how:

  • The MC Resource Centers bring you the widest selection of white papers, trial software, and on-demand webcasts for you to choose from. >> Review the list of White Papers, Trial Software or On-Demand Webcast at the MC Press Resource Center. >> Add the items to yru Cart and complet he checkout process and submit

  • Profound Logic Have you been wondering about Node.js? Our free Node.js Webinar Series takes you from total beginner to creating a fully-functional IBM i Node.js business application.

  • SB Profound WC 5536Join us for this hour-long webcast that will explore:

  • Fortra IT managers hoping to find new IBM i talent are discovering that the pool of experienced RPG programmers and operators or administrators with intimate knowledge of the operating system and the applications that run on it is small. This begs the question: How will you manage the platform that supports such a big part of your business? This guide offers strategies and software suggestions to help you plan IT staffing and resources and smooth the transition after your AS/400 talent retires. Read on to learn: