IBM i, Watson & Bluemix: The REST Of The Story
June 21, 2017 Dan Burger
Integrated Web Services is nothing new for IBM i. But that doesn’t mean there’s nothing new in Web services. A couple of years ago, IBM introduced Bluemix, an integration framework that, among other things, allows applications on other systems to connect with business logic running on i. The Bluemix tooling was designed to consume REST APIs, which can be used to connect Watson and IBM i. That’s where the newness is evident.
The plumbing that’s necessary to make these things happen is being built by the IBM i development team led by Tim Rowe, business architect for IBM i application development.
“Enablement plumbing is what I’ve been doing,” Rowe said during a meeting with IT Jungle at the COMMON Annual Meeting and Expo last month. “I’m about leveraging the business logic in programs.”
IBM i developers have been using Web services and the Integrated Web Services Engine to modernize applications for 10 years. If you’ve been developing Web services, you know things ain’t what they used to be. How could they be? Time waits for no one. The IWS technology stack that was delivered in 2007 was modernized three years ago.
In the service oriented architecture days of 2007, IBM produced Web services for SOAP (simple object access protocol). That was the industry standard technology at that time. SOAP remains popular, but Web services technology has transitioned to REST APIs, what most developers would describe as a modern day Web service.
A REST API is a way to externalize a piece of business logic, a service, or a function, in a way that doesn’t require knowledge of the language, database, or the system it is running on. All that is encapsulated, Rowe says.
The way developers are using APIs is evolving and Rowe’s job is to keep up with the evolution. Not quite two months ago, two-tier support was added to Web services. That allows a Web service on one system to call RPG programs (or programs written in other IBM i-supported languages) on a separate system. Six months ago, Swagger – a popular framework of API developer tools – was added to the IBM i Web services support package.
It’s an application development evolutionary adventure.
“A year ago, we were talking about how to connect Bluemix to IBM i. REST APIs made that possible,” Rowe says. “This is part of a bigger issue of being relevant today and into the future. Modern RPG is another part. There are many tooling pieces.”
Support for open source languages – PHP, Python, Node.js and Ruby – are part of IBM i Chief Architect Steve Will’s strategic goal of supporting multiple programming models on IBM i, so that users can apply new approaches and integrate them with existing investments.
“We moved into open source languages to help our customers with the modernization of their existing backend systems. They can continue to do their transactional processing in the languages (RPG and COBOL) that do transactional processing well. While the UI is highly integrated, it isn’t tied to modern data types and modern displays. But we’ve successfully leveraged PHP and now there are Python and Node alternatives. Now we are working on leveraging Watson. We are trying to remove excuses [for not modernizing] by including open source alternatives. We want to help companies be successful for where they are today and where they are trying to go in the future.”
Speaking of Watson, which IBM did a lot of at the COMMON conference last month, Rowe pointed out that calls to Watson can be done with any of the supported languages. Using PHP or Python is a little more natural for calling that type of an API than using RPG, he acknowledged, while also noting that all languages have strengths and weaknesses. Relying on a single language to do everything is really a relic of programming history. Yes, Rumpelstiltskin, it’s been moving in that direction for some time.
Bluemix, on the other hand, is the future, but there’s been very little inclination for IBM i shops to venture into that frontier. Rowe and his team of developers, the IBM i plumbing supply company, are eager to hear from the Bluemix early adopters. Their feedback will impact future product development. As an accomplished educated guesser, Rowe has a feeling the enhancement of data connectors from open source languages to backend systems is one area of development that may occur because XML services with JSON connectors could be leveraged through Bluemix.
“Some people are using Bluemix to create new IBM i interfaces,” he says. “And some new applications are being written in Bluemix that leverage IBM i data. But it’s yet to be seen where the potential could lead. My focus in on the plumbing customers need to get access in a natural manner to what they need. What they are going to do with it will be fascinating to see.”