Integrate Python into CL and RPG on IBM i

python trainingPython has been gaining momentum for building utility applications on IBM i, such as creating/reading Excel files, data transfer, process automation, calling REST APIs such as Salesforce and ServiceNow, and application monitoring.

Although some have said that Python would become the “new CL,” one limitation remains. While Python can easily call CL, RPG, and COBOL programs, calls in the other direction—from CL, RPG or COBOL to Python—required extra effort.

In this post we will introduce you to the PYRUN command, from Richard Schoen’s open source PythonOniLibrary (https://github.com/richardschoen/PythonOniLibrary), which makes it easy for traditional CL and RPG programs to call Python utilities and use their output. Read more

Free encryption for Node.js on IBM i

Let's EncryptWhen you browse a secure web site or API whose address starts with “https,” what makes the site secure? The site uses a special certificate, provided by a trusted Certificate Authority (CA), to prove that it is legitimate. Until recently, IT shops had to pay for these certificates and generate them manually.

In the last few years, Let’s Encrypt has earned the thanks of technology professionals. Let’s Encrypt, a CA run for the public’s benefit, offers certificates at no charge, along with scripts to generate and regenerate certificates as needed, reducing the effort of keeping certificates up to date, and keeping sites secure.

Read more

Node.js Process Manager PM2 on IBM i

pm2 node.jsTo manage Node.js application processes in production on IBM i, we recommend PM2 Runtime. As PM2’s official documentation states, PM2 “…allows you to keep applications alive forever, to reload them without downtime and facilitate common DevOps tasks.”

Read more

Db2, SQL, and Open Source Languages on IBM i

db2 sql open source ibmiPresentation Handout

The ever-expanding capabilities of Db2 for i can simplify development in open source languages such as PHP, Ruby, Node.js (JavaScript), and Python. These languages, known for their effectiveness in building web and mobile applications, can tap into the power of SQL.

So why complicate them with repetitive code that distracts from their power and simplicity?

Read more

Sneak Peek at Plans for ILEditor 2

worksofbarryI’ve been eagerly watching Liam Allan’s open source ILEditor mature into a very convenient tool that I can turn to whenever I have a quick development task to perform and I don’t have an active RDi session open. So I was thrilled to learn about his plans for the next major release!

The beauty of ILEditor is that it starts up quickly, performs quickly, and lets me return to whatever else I was doing. For example, I recently used it to copy and send some CL code to a client while I was on vacation. So fast!

Read more

RPG APIs: A Modernization Treasure

K3SWhen modernizing applications, we help organizations select a software architecture that’s flexible, yet can last many years.

A recent article about our client K3S got our attention. Author Alex Woodie wrote that the inventory forecasting software vendor had updated their package with an attractive web-based interface using PHP, while adapting their existing RPG code into APIs written in RPG.

But I knew there was more to this story. So I asked King Harrison IV—K3S’s executive vice president, friend, and founding member of Club Seiden— to elaborate on their choice of RPG APIs.

Read more

Integrating Salesforce with IBM i Applications

Salesforce IBM iWe recently worked with a large financial services company that wanted to enable real-time data updates between Salesforce and applications running on both IBM i and a Linux-based system.

Every day, people from a variety of departments entered customers, leads, and orders into these systems. The salespeople, however, needed to access the most current information from within Salesforce.

Read more

Configure IBM i Apache Threads For Higher Traffic

When your site gets busy, your web server may need a configuration change to handle the load. We often start with the Apache web server’s ThreadsPerChild directive.

ThreadsPerChild controls how many connections can exist at once. Defaulting to 40, its value can be set in your Apache instance configuration file (for example, /www/zendphp7/httpd.conf):

Read more

Steve Will Discusses IBM i Strategy

Steve Will on IBM i strategy

Steve Will discusses IBM i strategy

We recently hosted a day of strategy discussions for IT executives at Seiden Group’s CIO Summit in Dallas. Special guest Steve Will, Chief Architect of IBM i, joined the group to share his direction for the platform.

Read more

Installing Composer on IBM i

Composer, a tool to manage dependencies in PHP applicationsThe open source Composer tool, which manages PHP project dependencies, has become standard equipment for modern PHP. New to this tool? I recommend this introduction to Composer.

Composer automatically installs or updates required components, known as dependencies, and any others required by those initial components. The required components are defined by the developer in an easy-to-read JSON-formatted text file.

Read more