 Hey, welcome back everybody. Jeffery here with theCUBE. We're at Node Summit 2017 in downtown San Francisco at the Mission Bay Convention Center. About 800 hardcore developers talking about Node and really the crazy growth and acceleration of this community as well as the applications. We're excited to have our next guest. He's Nick O'Leary, developer advocate from IBM for Watson IoT and you're working on something kind of cool called Node Reds. First off, welcome. Thank you, thank you very much for having me. Absolutely, so what is Node Red? So Node Red is an open source project. We started working on about four years ago now in the emerging technology group in the UK part of IBM. And it's a Node.js application that gives you a visual programming tool for instance of things type applications. So when you run it, you point your web browser at it and it gives you this visual workspace to start dragging in nodes into your canvas. It represents some sort of functionality like connect to Twitter and get some tweets or save something to a database or read some sensor data, whatever it might be. And you start drawing wires between those nodes to express how you want your application to flow, how you want data to flow through your application. So it's quite lightweight tool and really accessible to a wide range of developers whether they're seasoned experienced node developers or kids just learning how to program because it hides complexity. Right. And yeah, it's Node.js space that runs down on a Raspberry Pi. It runs up in the cloud like IBM Bluemix, wherever you want to run it. So really flexible developer platform. Pretty interesting because we just had Monica on from Intel and she was talking about one of the interesting things in this development world of Node.js is so much of the code was written by somebody else. I think she said in a lot of projects the actual original code maybe 2% because you're using all these other stuff and libraries have already been created and it sounds like you're really kind of leveraging that infrastructure to be able to do something like this. Absolutely. So one of the key things we enabled very early on was to, because we recognize the power of our tool is those nodes in our pallet that you drag on. So we built the system so that people could write their own nodes and extend the pallet. And we use the same node packaging as the standard NPM ecosystem. And as of a couple of weeks ago we have over a thousand third party nodes. People have written. So there's probably already a module for most hardware, devices, online APIs, databases, whatever you want. People are creating and extending the platform in all sorts of ways. Just building on top of that incredible ecosystem that Node.js has. And then how does that tie back to Watson? You said you're involved in Watson. So Watson people don't think of necessarily a simple interface but not necessarily a simple application. So what's the tie between Watson and Node.js and Node.RED? So Node.RED is a development tool, I say it all hinges on those nodes and what they connect to. So we have got nodes for the Watson IoT platform. So that's great for getting, if you're running Node.RED on a Raspberry Pi connected up to our IoT platform, connect to applications in the Bluemix space. But we also have nodes for the Watson cognitive services like machine learning things, visual recognition, text to speech, all of those services we have nodes for. So again, it allows people to start playing with the rich capabilities of the Watson platform without having to dive straight into understanding lines of code, start being productive and create real meaningful solutions without having to understand whether it's Node.js or Java or whatever language you'd normally write to access low level APIs. And can the visual tool connect to things that are not necessarily Node specific? So anything that provides some sort of API, if it's got a programmatic API, then it's easier to do with Node because we are in a Node ecosystem. But we've got established patterns for talking to other languages, but also things often provides like a REST API, HTTP, MQTT, many other protocols. And we have all of that support built bit straight into the platform. Right. So what was the motivation to build this just to have an easier development interface? Yeah, it was twofold really. One was in the emerging technologies group where I was, we do proof of concepts for clients. We have to turn around really quickly. So whilst we're more than capable of writing individual lines of code, having that tool that lets us experiment much quicker and solve real client problems much quicker was a great value to us. But then we also saw the advantage for the developers who don't understand individual lines of code for educational purposes, whatever it might be. There was great motivators there in the various communities we're involved with in IoT home hobbyists, all that sort of space as well. It's found a real incredible user community across the board. And when it started, was it designed to be an open source project or that kind of realization if you will kind of came along the way? I think on day one, it wasn't the first thing in the mind. Yeah, we were just experimenting with technology. Right, right. Which is kind of how we operated. Right. But we very quickly got to the point where we realized we didn't have the time and resource to write all the nodes that could be written. Right. And there was a much broader audience than just us doing our day job that this tool could tap into. So, maybe not on day one, but maybe on a month in we thought this has to be open source. So, it was about six months after we started it, we moved to an open source project. And that was September 2013. Okay. And then in October last year, IBM contributed the project to be a founding project of the JavaScript Foundation. Okay. So it's a project that has come from IBM. It's now a project that is independently governed. It's not owned by IBM. You know, it's part of the foundation. So, you know, look at the wide range of other companies getting involved, making use of it, contributing back. It's really good to see that ecosystem build. Well, that's great. So I'm just curious, you said you do a lot of customer prototyping. Obviously you're involved in Watson, which is, you know, kind of the pointy into the spear right now with IBM, with the cognitive and the IoT. As you kind of look at the landscape and stuff you're working on over the next, I would never say multiple years because that's way too long. Six months, nine months. What are some of your priorities? What are some of the things you're seeing kind of that customers are doing today that they couldn't do before that, you know, gets you excited to get up out of bed and go to work every day? From my perspective, you know, with our focus on Node-RED, which is kind of where my focus is right now, it's really that developer experience. You know, we've done, we've gone so far with our really sort of intuitive to use tooling, but we recognize there's more to do. So how can we make it, how can we enable better collaboration, better, you know, basic workflows within our particular tooling? Because, you know, there are, there are people using Node-RED in particular, happily in production today. But it's funny because we don't have a 1.0 version number. Because, you know, for us, that wasn't interesting to us because we are delivering, you know, a meaningful function. Right, right. But in the project, we have just published our roadmap to a 1.0 to really give that firm statement to people who are unsure about it as a technology that this is good for production. Right. And we've got a wealth of use cases of companies who are using it today. So that's very much our focus, my focus within Node-RED. And all of it does then tie back to, yes, it's a JS Foundation project, but then with my developer advocate hat on, making sure that draw from Node-RED into the Watson platform is as seamless and intuitive as possible because that helps everyone. Right, right. Okay, so before I let you go, two things, one begs the question, what version are you on and where can people go to find more information so they can see when that 1.0 and obviously contribute. So as a Node project, we've stuck to semantic versioning. So we are currently version 0.17. Okay. So we've done 17 major releases over the last, about three and a bit years. And that's where we're moving forward. We've got this roadmap to get to 1.0 first quarter next year. All right. And if you want to find out more, Node-RED.org is where we're based. You'll find us through links via the JS Foundation as well. All right, well, Nick, thanks for taking a little bit of your time and safe travels home at the end of the show. Thank you very much. All right, he's Nick O'Leary from IBM. I'm Jeff Frick. You're watching theCUBE. Thanks for watching. See you next time.