Native Open Source: Why It’s Time for IBM i
April 19, 2017 Alex Woodie
When you think about open source software for IBM i, chances are good you envision PHP applications or Ruby code or even Node.js, all of which were adapted from other platforms to run on IBM i. But there’s a new movement afoot to spur more development of open source software that runs natively on IBM i.
Make no mistake about it: getting PHP, Ruby, Python, Node.js and the others to run on IBM i is a good move by IBM. The work Big Blue has done to bring these technologies to IBM i – much of which is delivered through the 5733 OPS Open Source Technologies offering – shows that it’s not deaf to the cries of the IBM i faithful to help it modernize the platform and make it more relevant to the new generation of coders. After all, few colleges are teaching RPG or COBOL anymore.
But at the same time, there are drawbacks to IBM’s approach that should be reconciled in the open. While getting languages like PHP, Ruby, Python, and Node.js onto the IBM i platform is great, the fact that they run in PASE, the IBM i operating system’s AIX runtime, is problematic.
“If it’s in PASE and you’ve got to dig into IFS and the way they structured the PASE setup and all the rest of it – it’s a nightmare,” says Chris Hird, president of Shield Advanced Solutions, an Ontario-based developer of high availability software for IBM i.
Hird is one of a small but growing number of IBM i professionals who are advocating for the development of open source software that runs natively on IBM i. In other words, they’re looking to promote the use of good old ILE RPG for open source software, as opposed to relying on newer languages to be the conduit toward open source.
While Hird has done his share of open source work in PHP and other “modern” languages, he considers their reliance on PASE to be a burden that gets in the way of productivity of IBM i professionals.
“Stop trying to push PASE,” Hird tells IT Jungle. “Even I struggle with PASE some days. There’s a lot of stuff on my Linux boxes that I do every day, but when I try to do it on AIX it’s just a pain in the neck. Nothing really works well.”
While it is true that IBM has taken a leadership role in building an IBM i open source culture around the new languages – which Hird dubbed “the porting group” in a recent blog post –Hird says there’s no good reason that RPG shouldn’t be used more widely for creating open source software.
“So I said, let’s push native,” Hird says. “Let’s move away from PASE and get people developing in RPG that people can have for free, and let’s see what that does.”
Hird is advocating for a native “ILE group” to counter the PASE-loving porting group and provide a path for the creation of an RPG-based open source community that’s as vibrant as the one being developed around the new languages.
If the idea of open source RPG software sounds odd, you’re not alone. For whatever reason, we’ve been conditioned to consider native RPG code proprietary (or at least tightly managed, but rarely free), while assuming anything written in PHP or Ruby to be free and open source.
But in reality, the particular licensing scheme used to distribute a given piece of software is entirely separate from the software itself. There’s nothing stopping an enterprising developer from distributing an RPG utility under an Apache license – or, god forbid, GPL.
One of the folks in the ILE camp is Carsten Flensburg, who works as an IBM i application development manager for a European vacation rental company. Flensburg recently gave Hird permission to re-distribute his RPG-based APIs that were first published on iPro Developer.
“There’s lots of really good stuff going on in the open source and the ILE camp,” Hird says. “I think we just need to get the word out there and get people interested. Not from the IBM point of view with all these new languages. But from the perspective that it’s native; it’s what you do every day. You don’t have to jump into this porting group to be able to do it. There are other things that you can do and be useful and help IBM i.”
When you consider that most IBM i programmers are working in RPG, there’s a large potential base of people who can be both contributors of open source code, as well as users. Getting into the whole give-and-take of the open source community – getting the buy-in and the commitment, as it were – may take some time, but Hird is convinced it’s the best route forward.
“We try to encourage people to get involved,” Hird says. “Even if it’s just answering questions. We need people who are going to say, ‘Yeah, it’d be nice if it did this or this is a much better way of doing that.'”