Node-RED: The IoT Programming Language No One is Talking About
Sussing out the key pieces of the Internet of Things is usually accompanied by caveats ranging from the established uncertainty of the future, the security problems of the present, and the legacy system integrations of the past. Industry gurus and thought leaders predict growth in the billions – dollars, devices, deployments, Cloud applications, etc. Networking experts waffle on standardization. Hardware providers sprint to keep up. But one of the critical pieces of the Industrial IoT is something you won’t find jumping off front-page headlines – yet: Node-RED, the programming tool for wiring together hardware devices developed by IBM, is the power behind the IoT throne, and no one is really talking about it. Lost amid the noise about ‘smartifying’ the world is the practical reality that unless you can figure out a way to seamlessly connect the hardware devices that comprise a smart network, you are essentially relying on the Cloud to run an overwhelming number of disparate applications – and that is assuming your network is near invincible. Since the Industrial IoT relies, in theory, equally upon Cloud and Edge device processing, developing software applications that can effectively run in both settings is crucial. This is where Node-RED comes in. According to Nodered.org, the open-source Node-RED ” … provides a browser-based editor that makes it easy to wire together flows using the wide range of nodes in the palette that can be deployed to its runtime in a single-click … [making it] easy to wire together flows using the wide range of nodes in the palette.” The essence of this tool is that engineers and operating technicians can create and configure applications easily, in real time, on Edge devices. Ideally, the pieces of code being used to create programs are reusable, meaning that the process can be learned by field operators without the need for a degree in computer science. The code is built on Node.js, the JavaScript runtime that frequently pops up on Raspberry Pi platforms due to its ease of use. So, if it is so easy, and so important, why is no one talking about it? The ongoing problem for the IIoT is the Wild West mentality: the no-holds-barred land grab has resulted in disparate hardware and software products that often require a combination of proprietary and open-sourced solutions. As a result, the actual mechanisms that drive the building of an IIoT network are often less talked about than the tangible pieces that come together to build that network. There are several considerations to keep in mind. First, the idea of IT/OT convergence has only just started to gain traction, so legacy solutions (especially in certain industries) haven’t quite crossed the threshold of multi-function. Second, the changing demographic of the workforces in the industrial sector means that the traditional gatekeepers, often not versed in software or computer programming, have been loathe to adopt solutions that require a whole new skill set. The result is that the idea of programming between devices and Cloud applications is in a relative infancy. Third – and still related to the workforce demographic – creating an entire workforce of people versed in both hardware engineering and computer programming is impractical. Those factors, along with several others related to the need for network functionality and data analytics, means that a solution like Node-RED is still not completely understood, and perhaps even more pertinent, still not widely adopted by industry leaders on both the hardware and software side. But it also means that it is more necessary than ever.