Why IoT loves Node.js
Smart city development now a global phenomenon, says Navigant Research

Why IoT loves Node.js

Do you care what happens inside the ‘guts’ of the Internet of Things (IoT) and is it all way too geeky and tough to understand anyway? Could it possibly be quite straightforward and rather enlightening?

A typical Internet of Things user walks into a bar and says, “Actually, I really ‘RLY’ don’t care about how the IoT works, I just want to play with the shiny shiny elements and the fun devices.”

Somewhere across the bar, a social speech recognition sensor picks up the sentiment in the language expressed by the user and offers a simple and easy-to-digest explanation of how and why the guts of the IoT matters — all served up on a beermat/napkin, obviously.

IoT with Node.js inside

Beermat #1 offers Node.js — this JavaScript runtime environment built on Google Chrome’s V8 JavaScript engine uses an event-driven, non-blocking I/O model that makes it lightweight and efficient.

In other words, Node.js is a place to run IoT app software (runtime environment) built using technology to translate JavaScript into code that machines understand (Google V8) that is capable of handling lots of things happening at once (an asynchronous event-driven Input/Output model) that is small in terms of its total installation footprint (lightweight code).

A brief history of Node.js & the IoT

Node.js in IoT started at a hobbyist pursuit, but has grown tremendously since it first debuted in 2012.

There are NodeBots chapters (special interest group fan meetups) around the world, Skycatch used Node.js in construction-grade drones to find areas affected by the Nepal earthquake.

Node.js is also being used front and center in commercial products like Siemens Smart Grid product (Monet) — this “Energy-of-Things” power management solution uses Microsoft Azure to host applications developed in HTML5, JavaScript, Node.js and MongoDB on Linux.

Intel Edison

The Intel Edison is as tiny as a stamp, while delivering good performance with its dual-core atom system on a chip (SoC). The Intel Edison can fully run the Node.js framework, allowing developers to write IoT programs using Node.

Node.js is used in IoT projects for both the device and the server. It has also been noted that the ability to build C++ modules has helped developers considerably in the IoT world. A good proportion of hardware has already C drivers written, so that developers can just wire them to Node.js.

On the server side, all those improvement of V8, performance, and memory consumption means developers can connect more devices from a single server: upgrading to the latest Node thing makes a lot of sense.

Additionally, libraries like Rock Waldron’s Johnny-Five now support hundreds of hardware variations, sensors, motors, displays and just about anything you would need to start building an application for the physical world.

The NutraSweet effect ?

Do you care about Node.js yet? Even just a little bit? Remember how you started buying diet drinks specifically because they had NutraSweet inside them rather than saccharin? Remember how you wanted a Pentium processor PC back in the 1990s specifically because it ran an Intel processor? To an increasing degree we can see users becoming more and more aware of what happens inside their devices as they look to examine the pedigree and provenance of technology that drives their machines.

Now you know Node.js basics and the lesson has just begun.