The Internet of Things is coming! But just how do you prepare for it? IBM is betting that developers will approach the Internet of Things like engineers, and has thus created Node-RED, a simple point-and-click development interface designed for supporting the development of applications that require functionality or input from physical devices.
In practice, Node-RED comes off looking and feeling like a more advanced version of the popular free Web tool If This Then That, or IFTTT.com. IFTTT.com is just what it sounds like: a Web page where users can (in plain English) create API links, for instance, “If Facebook is updated, then copy the update text and paste it to Twitter.”
(Related: How the Internet of Things makes M2M analytics a reality)
Node-RED behaves in much the same way, but uses lines and a GUI to create these simple integrations. Dave Conway-Jones, senior inventor and mobile and embedded technology consultant at IBM, created Node-RED with his team in order to speed up their own internal work on integrating devices into IBM professional service projects.
“We started just over a year ago,” he said. “There was an internal program going around where we were given some time to do some thinking and to research some things. As part of that, we started to evaluate Node.js and some of the other JavaScript libraries and see what we could build with them. We were also trying to scratch an itch we’d had for a while. The group I’m in still does prototypes for customers. We were doing increasingly more and more things that seemed to be this similar pattern where we would connect some device into some network that connects to some back end and get the data from A to B.”
That pattern was repeating more and more often, as clients demanded the integration of a new temperature sensor or a camera, or if they wanted the ability to send SMS messages based on events.
The tool itself is now open source and available for free online. Conway-Jones sees it as an important development tool that speeds up feedback for those working with Internet-enabled devices.
“The way we think about it is, you have a spreadsheet for playing around with numbers, but there’s no tool for playing around with ‘if this then that,’ ” he said. “This is like one stage further on than that. You can do more complicated things and use the hardware. There are people making LED’s flash, sending themselves messages when the doorbell rings, and other low-level mechanic-type things.”
The future of the platform should hold a lot more integrations, said Conway-Jones. As an open-source project, developers have already begun to add their own devices and actions to the platform. But he also sees a future in business for the project.
Conway-Jones described a manufacturing client that had been using Node-RED to read and control data from pressure sensors in a manufacturing plant. When the temperature sensors were replaced with more sensitive models, the amount of pressure expected was halved. Using Node-RED, however, he was able to quickly change the temperature variable without having to change any code. The new sensors were brought online almost immediately.
And this is the power of Node-RED, said Conway-Jones: It makes it much easier to develop software that uses APIs and multiple devices to gather information.