Next up for Node.js: Going mobile

Amid talk of a fork, Node.js maintainer Burt Belder hatches an ambitious plan

Node.js, known as a popular server-side JavaScript implementation, could become more prominent in the mobile space. 

The platform needs to expand its horizons in mobile, according to Node.js maintainer Burt Belder. "It's an identity question," Belder said when interviewed after his HTML5DevConf presentation on Node.js this week in San Francisco. "The question is more like, do you want to be a server-side-only thing, or do you want to do world domination?"

Although Google's Android platform interoperates with Node.js to some degree now, users are reporting bugs and saying it doesn't work, said Belder, who added that the Android implementation is not maintained as part of the core server-side Node.js. He remains undaunted, saying Node.js could even end up ported to Apple's iOS mobile OS. "Supporting all devices adds a lot of value to the platform," he noted.

Tools provider Nubisa is focused on this, with its JXCore multithreaded Node.js distribution serving as the underpinnings of the Nubisa native mobile application development platform. Node.js also works on the Raspberry Pi development board, Belder noted.

But a key proponent of PHP, popular in server-side Web development, questioned the worth of Node.js on mobile devices. "I don't see the benefit of moving Node.js to the client side," Andi Gutmans, CEO of PHP tools vendor Zend Technologies, said in an email. "You have client-side JavaScript, which is tailored for client-side logic. Node.js is really an adaptation of JavaScript to the server side, and I don't think there's much value for it on the client side -- unless I am missing something."

Belder claims that the core Node.js platform will move to a multithreaded model. "The language, JavaScript, it's not possible to run it on multiple threads," he noted. However, multiple JavaScript VMs can be run in one Node.js process. "Your program loads multiple times within the same application. But it lets us internally do much more efficient things, for example, dispatch incoming connections to different workers."

Node.js has been the subject of forking talk recently. Joyent, the steward of Node.js announced its advisory board intended to provide more community input and satisfy developers unhappy with Node.js's evolution process. "In the past year or so, the community has been increasingly unhappy about a very slow release schedule," Belder said, but a major forking would result in "two parallel efforts that try to build the same product."

Copyright © 2014 IDG Communications, Inc.

How to choose a low-code development platform