In previous articles, we’ve gone through the APIs that make up Watson, but we haven’t ever heard from IBM itself. To remedy that, here’s an interview with Tim Rowe, IBM Watson guru.
Officially, Tim Rowe’s title is Business Architect, Application Development and Systems Management for IBM i. If length of title means anything, Tim may be the most important person in the world. But given his normally low-key approach, he might not be quick to acknowledge that.
Tim has been a key player on the Watson development team for quite some time, and I was fortunate enough to be able to track him down in his natural habitat: a deep-underground bunker on the Rochester, Minnesota, IBM campus.
Tim’s office is located some 17 stories below ground level. I was escorted down by a young man wearing a plain black suit with a peculiar bulge on the left side of his suit coat. We wound our way through a series of serpentine, dimly lit, metal-walled corridors until we finally emerged into a bright central room, the kind that used to be walled with whirling disk drives and tapes. Tim sat at a plain desk near the center of the room. He got up, somewhat wearily, as I came in. We shook hands while the young man positioned himself against the near wall, folded his hands in front of him, and kept eyeing me suspiciously.
[Editor’s note: I’m beginning to suspect that parts of this article could be fiction.]
“Thank you for seeing me,” I said as Tim and I sat down.
“Uh, sure,” he said, starting slowly. “Always happy to have a guest.” Then he paused and looked directly at me. “Let’s cut to the chase, Dave. What do you want? We’re pretty busy down here, and normally not even Jon Paris can get this far.”
“Susan?” I asked.
“Of course, Susan,” he answered, sensing my question. “Everyone likes Susan.”
“Well, the reason I’m here is to get the answer to a question that a lot of people have been wondering. What can Watson and the IBM i do together?”
“Interesting”, he replied, leaning back in his chair slightly. “Interesting that you should ask. As it turns out, that is a challenge that our boss, Alison Butterill, gave to this group about a year ago: to investigate how the i and Watson could best partner with each other.”
“Well, this is very timely then. How did you go about doing that?” I asked.
“The first thing we did,” Tim replied, “was say, ‘What do you need to have in order to use Watson?’ Basically, there are only a few things.
First, you need to be able to access the cloud, because that is where Watson lives: in the IBM Cloud.
Second, you need to be able to send and receive JSON data between your i and Watson because all of the input to and output from Watson must be in JSON format.
Third, you need to be able to have a way to integrate Watson and your back-end office functions, which means you must be able to trigger the Watson REST APIs from within your existing SQL and RPG apps.”
“So what’s the plan? Put support for that stuff in 7.4?”
Tim responded, “There’s no need for that. The i already has everything it needs to work directly with Watson.”
“Yes, seriously”, he replied. “For one thing, everyone is already connecting their i to the web, so connecting to the IBM Cloud to access Watson is as simple as going to the site and setting up an account.”
“Or take JSON”, he continued. “Remember the RPG op code XMLINTO? Well, we have already added a DATAINTO op code that is part of 7.3. By using this op code in the RPG compiler, you can move your JSON data, which is the output of a Watson API, directly into your RPG-based i app, converting it into an RPG array. Or, if you’re using tables, you can use the DB2 JSON Table Support facility.”
“And for data going out?” I asked.
He shrugged. “There’s no native support in RPG to convert an RPG array to JSON, but there is open-source stuff out there, and if you didn’t care about how pretty the package was, you could write something in Node.js, which now integrates with the i, pretty easily. If you’re talking about DB2 tables, then you can use the JSON publishing function to create your JSON stream from a DB2 table. “
“But what about accessing the API? That’s still hard from RPG, isn’t it?”
“No, not at all,” he scoffed, and I was sure the guard coughed discreetly to cover a chuckle. “The updated IBM Web Services support allows you to call REST APIs directly from both RPG and SQL. Of course, there are some caveats. The RPG program must be ILE, for example. But at this point in time, everyone should be moving in that direction anyway.”
“Hmm, well that seems to make it pretty easy to do the actual connection.” I began to shift my body to a more comfortable position and couldn’t help but notice the young man snap to attention and move his hand toward the inside of his coat. I stopped halfway and so did he. “Uh, maybe we should talk about why you might want to do stuff with Watson. I mean, what’s the big deal anyway?”
Tim shook his head and settled back. “So many reasons,” he said finally. “First, and maybe most importantly today, are the analytics. Everyone is suddenly finding that they have so much data at their fingertips. In-house data, social media data, stored data from hundreds of sources. Most of it is unstructured, of course, but since Watson is able to deal with unstructured data, that’s not a problem. Watson can take that data and develop advanced analytics on it, analytics that show you trends and patterns you otherwise probably would never notice. And, as we have said, those analytics would not be on a standalone platform but integrated with your IBM i.”
“The other thing Watson provides,” he continued, “is a wide range of applications ranging from translation services to image recognition to content analysis to chatbots that assist with customer service. No matter what type of business you’re in, you should be able to find at least several APIs that can help you deal more effectively with your key business issues.”
“But you need to know quite a bit in order to do this, right? Technically speaking, that is.”
“No, not really. You need to know your business, need to know where you could apply Watson to generate the biggest return, but you should know that anyway. After that, you need to know RPG or SQL and do the setup for the various tools you will use, but no great technical knowledge is required. One of our guiding principles was to make this as easy for a company as possible.”
For a moment his attention seemed to wander, but he was only thinking. After a moment, he continued. “There is one thing that you do need. You need to be pretty well up to date. You know, with releases and such. To take advantage of all that we’re offering. Can’t do too much on 5.4.”
I nodded in agreement. “That only makes sense, though. Where would you suggest people start? What is the most important thing?”
“Start by getting vaguely familiar with the family of Watson APIs. Look at the Watson site [www.ibm.com/watson] and see what’s out there. Then ask yourself, what is our business most in need of? Is it image recognition to assist with QC on the shop floor? Or is it content analysis to help us gauge how our customers feel when they call for support? The primary thing that people need to do is be inquisitive. Be willing to explore. It’s out there, and the technology is just not that hard.”
I was about to speak when a warning siren suddenly went off. Tim and the young man both stiffened, and then Tim looked at me with a renewed intensity. “We’re going to have to cut this short, Dave. Rolf will get you out of here. This is an emergency that only I can deal with.” He looked slightly up and to the right, as if to some invisible power in the ceiling. And then he bolted out of the room, and Rolf and I made our way out a side tunnel that left me about two miles from where I had parked my car. Rolf waved me in the proper direction and disappeared back down the tunnel. I turned, and as a cold rain began to fall, started trudging toward my car.