IBMi and Open Source

Every now and then we get a bit of time to take a look at some of the newer technology IBM is bringing out for the IBMi, we were particularly interested in the improved support for Open Source promised for the next release of the OS. We had previously hacked around the open source made available for IBMi with varying degrees of success and frustration. Unfortunately time got the better of us and we had to drop the testing to concentrate on the High Availability tools we develop (they actually pay the bills.) and it has taken a while to get back to it.

This week we were fortunate enough to get a bit of time to play with node.js again, we dusted off the old code we had developed and updated the environment with the latest binaries available. Our intention was to build two test environments, one on Linux (x86) and one on IBMi to see which was easiest to to use and show just how well IBMi would run some of the Open Source utilities.

The results were not pretty, most of the demo’s and tutorials we found on the internet simply do not work on the IBMi. This is mainly due to missing binaries for features required by the demo. We did scale down the demo capabilities and reduce the binaries needed for the demos we developed but, as mentioned in one of the write ups for a demo (these modules are not necessary for running the demo, but they are features that will be invaluable once you move on to more complex projects) meant we would need them at sometime if this was going to be a real project so were we kidding ourselves by removing them?

Couple of things we did achieve with the IBMi that we think show promise for the future.

  • Managed to get the GNU C Compiler installed and running (this will be usefull if we need to build some of those missing binaries?)
  • Installed Git on the IBMi and tested an initial project set up and commit
  • Created a BitBucket server on our QNAP system. This will provide another level of security for the code we develop should the development system die.
  • Updated Node.js to the latest level supported by IBM (Still not the latest level)
  • Tested the use of node.js and Angular2 on the Linux system, just need to get the IBMi demo running now
  • Added an Angularjs front end to the previous node.js demo we built previously and displayed the JSON output


We still think IBMi has a very long way to go to be a truly viable Open Source platform. We were able to set up and run the Linux tests in a few minutes where as it took hours to figure out how to do the same thing on IBMi (hacking the demo code to remove missing binaries etc). The tools available for developing code and building the applications on the IBMi leave a lot to be desired especially when compared to whats available in Linux. We are not expert Javascript developers espcially when using these technologies, but we did manage to get it all up and running on Linux so in my view IBMi should have been just as easy.

We have not given up but think this is going to be a long journey. Even with lots of experience developing on the IBMi, some of these challenges are daunting.

Chris…