For 17 years, I was the manager of the IT department at Klement’s Sausage Company. One of my responsibilities there was hiring IT staff, a responsibility that I always dreaded. When I needed to hire a new RPG programmer, it was always easy to find applicants. Post a job on a few sites such as CareerBuilder, Craigslist, and COMMON’s Career Center, and you get many applicants.
Finding the right applicants, however, is another matter entirely! Many RPGers don’t keep their skill set up to date and aren’t interested in learning. Are these the sorts of programmers you want in your shop? Someone who can’t learn your environment and insists on doing everything the old-fashioned way? Of course not! You want someone who can learn what you have, figure it out, and troubleshoot it when needed. But, you also want someone who will keep up-to-date with their skills so they can provide quality new applications that are modern, work well, and are easy to maintain in the future. Finding someone like that is not an easy task! Personally, I always dreaded it.
I’ve recently experienced job hunting from the opposite perspective as well. In fact, congratulate me! I just got a new job with Profound Logic Software. One thing that I remember very clearly when I was applying for the job was what my new boss told me: “We’ve been looking for someone for a long time, but not just anyone. We needed to find the right person.”
The COMMON Certified Application Developer Program
That’s exactly why I volunteered to help with the COMMON Certified Application Developer – ILE RPG on IBM i on Power program. Together with a group of some of the brightest minds in the RPG community, we designed this certification exam to show that you are the right candidate.
The exam does not seek to test “RPG trivia”. It was designed by RPG professionals who work in the field. People like you and me who work in the RPG field and know what an RPGer needs to do a great job writing and maintaining business applications in RPG. It’s designed to test that you know how to do the real-world, practical things that today’s RPG developer needs to do. It seeks to prove that you have at least 3-5 years of RPG experience, as well as 18 months or more of modern ILE and free-format experience, using the techniques that are widely used in RPG shops today. If you’d like to know more about the types of items you’ll find on the test, the exam objectives are listed on COMMON’s website.
I’m very proud of the work we did, and I feel that it’s an awesome tool, both for programmers and for those who seek to hire them. I think that being certified as an ILE RPG Application Developer is important, because RPG is the best language out there for writing business applications.
RPG: Best for Business
Why do I think RPG is the best? Well, think about what you need to write good business rules? What do you do most in business applications?
Do math on numbers representing money, rates, and quantities.
Keep track of dates, such as shipment dates, payment dates, and due dates.
Keep track of records stored in database tables.
I’m not saying that’s all you have to do – but it’s the part that differentiates business applications from others. Every language has if statements, loops, and the ability to print data. You use that stuff in everything from writing video games to hardware drivers. But add up sales figures? Write payment records to a database? These things are only done in business applications. And these are the things that RPG excels at!
All programming languages can add up numbers, of course. But most languages are designed to work with integer and floating point numbers. Integers can’t store fractions, so they are not a good fit for business applications. Floating point numbers store only approximations of a number, especially when your numbers get larger, they start to round the values off, losing precision. RPG’s native numeric data type is decimal numbers in packed or zoned decimal format. You can store more than 60 digit numbers with no loss of precision, and no special fancy coding is needed to do decimal math in RPG – it’s the native built-in way of doing math. In most other languages, if you want to use true decimal numbers, you need to call a special set of APIs. RPG does it natively. RPG rocks for sales figures!
RPG is also the easiest language I’ve encountered for working with a database. We all know that the DB2 for i database benefits quite a bit from its tight integration with the IBM i operating system. Since the OS was designed from the ground up to have this awesome database built into it, the DB2 for i database is more efficient, flexible, and manageable than a similar database on another platform. Likewise, the RPG language has database deeply integrated into its design. Not just its native record access functions, but also the embedded SQL interface. No other language is as easy to write database applications in as RPG is.
RPG also has powerful, easy-to-use date manipulation built-in to the language. No need to call special APIs or run utility routines, RPG can simply add or subtract days, months and years to a date, making it really easy to do your date manipulations.
RPG Can Also Be Modern
RPG also supports modern programming techniques. It works very well with the ILE environment to provide modern, encapsulated subprocedures that you can call from anywhere. You can write SQL stored procedures and functions in RPG, so that database client applications can take advantage of RPG’s powerful business functions. You can write web services in RPG as easily as you can in any other language. With free toolkits like CGIDEV2, or the more advanced toolkits provided by the vendor community (including my own employer, Profound Logic Software), you can write modern applications with a GUI or Web interface. RPG can easily do the modern tasks that today’s programmers need to do.
That’s not to say that RPG is the best language for every task. Every programming language has its strengths and weaknesses. I’ve worked in more than 20 programming languages in my time as a programmer, and in my day-to-day job, I always have a choice of which language I want to write an application in. I love working in C/C++ for writing tools and systems software. I enjoy working in Java for writing applications that I need to run on lots of disparate systems. PHP is wonderful for banging out quick web sites. But for writing business rules? I pick RPG every time.
Get Yourself Certified
RPG is important to me. And that’s why it’s so important to have a good RPG Certification program. If employers can easily determine who the good RPG candidates are, and those candidates can easily display their credentials, then that goes a long way towards paving the way for a bright future for both RPG and IBM i. And together they make up the best platform for business applications in the world!