Node.js Is Helping Developers Get the Most Out of JavaScript
IN DEPTH: Node.js, the JavaScript runtime of choice for high-performance, low latency apps, continues to gain popularity among developers on the strength of JavaScript
Meanwhile, mega retail site Walmart uses Node.js extensively. Alex Grigoryan, director of engineering for the application platform at WalmartLabs, told eWEEK the customer-facing walmart.com application runs on React and Node.js—specifically, the company’s new universal React/Node.js platform known as Electrode, which Walmart recently open-sourced. Walmart also has orchestration services and mid-tier services in Node.js, he said.
Walmart.com uses Java for its back end and many of its mid-tier services. Other mid-tier orchestration services, such as the APIs the mobile app calls, are written in Node.js. In addition, its customer experience applications—what customers see and interact with—are Node.js.
“Besides the usual benefits, like Node’s async nature and the ability to work with only one language, the unique benefit for us is that it allows us to server-side render our React front end,” Grigoryan said.
Boundless spatial
Jonathan Lipps, director of open source at Sauce Labs, which uses Node.js to power its Appium mobile automation framework, said due to the explosion of packages available on the Node Package Manager (NPM) and improvements made to the JavaScript language, the kinds of applications that reasonably can be written in Node have broadened dramatically, he said.
Boundless Spatial is a case in point. The company provides Node.js-based open-source GIS solutions. Boundless uses the Node.js environment to run a web server for mobile devices to submit and retrieve geospatial data, said Wes Richardet, mobile product lead at Boundless.
The Boundless environment consists of Docker containers running Node.js apps that interact with IoT devices—in this case mobile phones—using an MQTT broker, an iOS/Android cross-platform app with React Native and general web development using Node.js web development build tools.
Javascript ubiquity
JavaScript’s ubiquity drew Boundless to Node.js, Richardet said.
“It allows JavaScript developers to contribute to mobile app development, server-side apps, the build tool chain and web apps,” he said. Richardet also said he likes that Node.js is well-suited for applications that are I/O intensive with many queries to a database.
In addition, Node.js has enabled the Boundless web and mobile developers to fix bugs and add features on the server side. In the past they weren’t able to contribute as easily and often were blocked from further development until a server-side developer was able to add what was needed.
Rick Adams, manager of IT application portfolio of digital interfaces at Lowe’s, noted this phenomenon in his shop, referring to it as “segregation” of developers.
“The reuse of our front-end developer skills to work on JavaScript on the back end has also been very nice for us,” he said. “Traditionally, we had a very segregated team where you had your front-end and back-end developers. The back-end guys worked traditionally on Java and our front-end guys worked traditionally on the front-end CSS, JavaScript and HTML,” Adams said.
“The front-end developers weren’t allowed to go in to change the JSPs [JavaServer Pages] and HTML because the back-end team owned that application at that level. So by going with Node, one of the big changes we were able to make is taking responsibility for the whole stack for the UI—from the back end to the view layer to the actual front end,” he explained.
What next for Node.JS? Continues on Page 4…
Originally published on eWeek