This content made possible by our sponsor. It is not written by or reflect the views of MSP TechMedia or IBM Systems Magazine.

Alex Roytman and Liam Allan on Creating a New Coding Framework Called Profound.js

In this sponsored advertising content series, Paul talks to Alex Roytman and Liam Allan of Profound Logic about their roles in the IBM i modernization space, how they're using Node.js to create a new framework called Profound.js and how it'll benefit the industry

Paul:  Hi everybody and welcome to another iTalk Business with Tuohy.  Delighted to be joined today once more by Alex Roytman of Profound Logic and also by Liam Allan of Profound Logic.  Now one of these nice really interesting calls because Alex is sitting out there somewhere in the bowels of California and Liam is sitting definitely somewhere in the bowels of South Hampton in the UK so we're going to expect a little bit maybe time delay here between voices.  So Alex for those who maybe haven't heard the iTalks that we have done before and that, do you want to just give the quick synopsis as to who Profound are please?

Alex:  Sure, absolutely.  So Profound Logic is an awesome software company and what do I mean by awesome?  Well we're in the IBM i modernization space although we do things in a much innovative way.  We've gone far beyond you know screen scraping type technologies.  You know we primarily concentrate on modernizing the user interface.  That is our bread and butter but we haven't just been doing screen scraping.  We've done innovative things like DDS to HTML 5.0 conversions and now getting into modernizing application code, business logic as well and I think part of what makes us very different is that we have some very smart people on the team.  Liam is no exception to that so we bring a lot of smart people.  The company is made up of primarily of technical people.  You know sales and marketing is nice but one way to market is just to create very interesting products and that is kind of what our approach has been.
Paul:  Okay so you guys recently have been taking-well I'll put that you're sort of embracing this whole new open-source technology.  I know that you have been doing a lot of work with Node.js so again I think maybe just to set a foundation here before we go into the details of what Profound are doing with Node, do one of you guys want to give a quick synopsis as to what Node.js is and why it is so relevant?
Liam: Yeah, I probably can pick this one up actually.  Well Node.js is technically is a language kind of similar to how PHP and RPG work.  You can write any kind of application.  You can write applications to the web.   You can write applications for ERPs or you know business applications. It allows you to develop software like it would be in any other language but in Java scripts which is amazing.  The reason I like Node.js quite a bit is because Java script is very flexible in what you can do with it and we can write up proof of concepts very quickly.  You can get demos working very nicely but it doesn't just do web. I know it is well known for the web but it can a lot of database stuff.  With so many open-source modules, it can do so much that it is kind of hard to visualize what its capabilities are because of how big the ecosystem for Node.js is.  It has been around for almost eight-yeah, almost ten years, almost ten years give or take.
Alex:  Yeah. The thing about Java script is that it is pretty much the de facto client side language so no matter what you know on the service side if you are working with PHP, Java, or RPG, you are still using Java script but it is something that pretty much every modern developer can jump into very quickly. Another thing that is kind of differentiates it from some of the other open source languages is that it is very much extensive-or malleable.  There is whole concept of NMP and packages. With that, it can be extended to work really, really well with IBM i I think beyond what some of the other open-source languages can do.
Paul:  Okay and so I mean of course you have that enormous benefit that people see in it that you are effectively using the same language on both sides so that you don't have a-it removes a confusion factor.  So what exactly is it then that Profound are doing with Node.js?
Alex: So at Profound we are building a framework.  We're call it Profound.js that provides really great integration with IBM i, with RPG. It allows you to extend RPG in a sense and it's-we are creating this framework where coding is very familiar to the typical IBM i or RPG developer.  Some of the developers that we have worked with or shown it too that are from the RPG community have kind of labeled it as the better version of free format RPG even though it is Java script code. It is Node.js code but it has all the capabilities of RPG within our framework and even kind of like the top down way of coding is there where you can do execute format like coding but in addition to that you can take advantage of anything that is open-source out there.  You can integrate with Watson and use any of the packages that are available for Node.
Paul:  Yeah.
Liam: I think some of the real main benefits that the actual framework brings is the one to one kind of mapping to RPG which is why like I say some people have said that it is kind of like the new RPG because we have made it so it's very-it's easily recognizable to RPG developers; the code would work the same as a RPG program would. You know we've added almost similar to data types where you can have you know just numbers or just strings or just character fields.  You can do all that within Node.js because we provide the ability to do that.  With having the tight integration so you can you know record level access would work the same.  DB2 access would work the same. You know we have a DB2 driver that works very similarly to how embedded SQL would work. It's tightly integrated so you can have RPG call Node.js and vice versa so it acts like it an ILE program, which is something that is very new and it works very well.  It's so integrated with RPG, you can just extend your application in Node.js but have it act as a program, which is very useful.
Alex:  That is a great point. One of the neat things is that we've made it so that Node can act basically like an ILE language just like any other you know ILE language on the system, on the platform so with that it can call RPG or call CL or be called by RPG or via a CL program or whatnot and be in the same call stack.  Even when there are screens involved, maybe that RPG program is displaying a green screen because as you know in most real world programs, you know not everyone has modularized everything and the screen logic and the back end logic is still in a lot of places.  It is all within one program; it's together so even in those scenarios when you have maybe RPG is displaying a green screen that in our environment gets translated on the fly to a HTML interface. Then that call a Node.js program that has its own rich user interface and that again maybe in turn calls another you know RPG or CL programs.  All of that we are able to make work seamlessly.  It just kind of flows in and out.  That's a very powerful capability that allows you to modernize you know in a step-by-step manner. You don't have to be an all or nothing.  You can take some of your programs.  It can be Node.  Some of your programs can still be you know even as far back as green screen you know RPG programs.  Of course all the parameter passing just works seamlessly as well because of the data types that Liam mentioned.
Paul: Yeah.
Liam: I think something else we should mention is that it is very tightly integrated with Profound UI which is something that I think we should pride with because we can keep all the UI that we have and we can just write new code for the same UI in Node.js or we can extend it with new UI using the same interfaces. It is actually pretty good.
Paul:  I'll tell you.  This is a space that I'm going to be watching quite closely because I've got to admit that Node.js is something that for quite a while has always fascinated me so it is going to be interesting to see it being truly used in anger.  Before we finish up here, there are-this is an opportunity I can't just let pass so Alex, I'll ask you.  So how-what has it been like having this 19-year-old working on a project like this with you and especially over long distance?
Alex: Okay.  Well in a sense Liam just blended in with our team.  When you know I first got to know him and was interested not even in the fact that he was such a young kid. I mean that was impressive but just the fact that he was working on a lot of interesting things in the open-source arena and at the same time me and my team were working on a lot of interesting things you know with open-source technologies and Node.  It just kind of seemed like a great match so we started talking.  The more we were talking, the more we were you know excited about the things that we doing so as far as working together, it's almost like Liam blended in.  He speaks the same language that I do in a sense and you know we work very closely together.  We seem to be able to collaborate very well.  Yes, there is you know a difference in I guess age and experience but it seems like we're on the same page so it has worked out very well. I don't know if Liam you have the same sentiments and if you agree with everything I am saying or what your thoughts are?
Paul: Yeah bearing in mind this is your boss you're talking to Liam. Now, go for it. [Laughter]
Liam: Yes, we definitely get on. Yes.  We do get along.  We get along very well with work.  We do work very closely as inconvenient as that sounds like being the distance.  We work very closely together and we do collaborate most days I think on a daily basis where you will talk and collaborate on what we're going to be doing next.  He knows if I need any help, I can go to him and vice versa.  We get a lot of work done.  We've very productive with the time that we have which is really good.
Paul:  Yeah I-
Alex: There is of course a time difference.
Liam: Yeah.
Paul: Yeah, but it's okay. Liam is young.  He's probably up until all hours of the morning anyway so-[Laughter].
Liam:  Well I mean can you blame me really?
Paul: Okay so-
Alex: We make good use of our time.
Paul: Okay so Alex, Liam, thank you very much for talking the time to talk with me and maybe in another few months or maybe in a year's time we can check in on this again and see where Node.js has led us all.  Okay, thank you for taking the time.  That's it-
Liam: Thank you.
Paul: That's it for this iTalk everyone so tune in again for the next iTalk Business with Tuohy.  Bye for now.
Learn more about Agile Modernization with Node.js and the Profound.js solution at:  

Paul Tuohy has specialized in application development and training on IBM midrange systems for more than 20 years.

comments powered by Disqus



2017 Solutions Edition

A Comprehensive Online Buyer's Guide to Solutions, Services and Education.


Paul Tuohy on IBM i Highlights of 2016


Aaron Bartell on RubyOnRails, Node.js and Litmis

IBM Systems Magazine Subscribe Box Read Now Link Subscribe Now Link iPad App Google Play Store
IBMi News Sign Up Today! Past News Letters