BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage News Q&A with Mikeal Rogers on Node.js 4.0

Q&A with Mikeal Rogers on Node.js 4.0

This item in japanese

Bookmarks

As recently reported on InfoQ, Node.js and former fork io.js have released their first combined in a single codebase. InfoQ sat down with Node.js Foundation community manager Mikeal Rogers to find out more.

InfoQ: How would you describe the response from the Node.js community, and the JavaScript community as a whole, to the release and the first converged code?

Rogers: This is a big win for us, it's a rarity when a fork reunites, but we've put a lot of work into making this happen.

Both communities from node.js and io.js came together to contribute to this release and we had more contributors and companies helping us with this release than we've ever had, which is incredible given where we were a year ago. 

We were able to build something really great without sacrificing our core values of the project, and we hope to continue with releasing more code, faster.  

InfoQ: When io.js first forked from Node.js in December last year how did you picture path ahead? Nobody could imagine that the last nine months have been easy, but what about the journey has surprised you?

Rogers: The community has been amazing, we’ve seen contributors grow in nearly every aspect of the project, far beyond what we had originally thought possible and it is continuing to grow.

InfoQ: The intention of io.js was always to converge with Node.js -- how do you feel about the length of time it took? Was it a pleasant surprise that it came quickly, or conversely did it take longer than hoped?

Rogers: We are extremely pleased with the time it took for us to create the new release, especially given the great features of this release. The latest version of io.js (version 3) was seen as more of a beta version to help us accelerate the build process. 

This helped us get more people involved in testing compatibility. It helped us to upgrade native add ons to NAN, and prepared us for a lot of various changes. It also really helped sniff out bugs and performance problems early on.

InfoQ: In your blog post "Fragmentation" you reassured readers that concerns about community fragmentation were the least founded. Do you feel that the Node community is stronger for what it has been through? How would you characterise the mood of the Node.js community at the current time, with 4.0 just released, compared to where it was in 2014?

Rogers:The combined io.js and node.js contributors have been happily working together for the last few months. The 4.0 release brings a sigh of relief that we’re now finishing with the work of unifying the code bases and can focus entirely on iterating together in advancing node.js.

InfoQ: Can you tell the InfoQ readers about what you feel are the biggest technical improvements that have been made to Node as a result of the io.js work -- which are the most noteworthy for you?

Rogers: Node.js includes some of the best io.js features, but probably the most notable is ES2015 specification underlying JavaScript, while modifications to REPL support, TLS encryption, PPC builds, the dgraph, node, and buffer modules also come from the io.js project. Also, idle memory usage is about 1/4 what it was in 0.12.x, which is huge for us.

InfoQ: One of the significant changes with the release is the updated V8 engine.

Earlier this year, TJ Fontaine said he thought "Node.js should not just be accepting newer version of V8 and pinning our release cycle to that portion of the upstream" and instead it should be "insulating itself from V8 changes and opens a door to a wider set of runtimes." Obviously you can't speak for Fontaine, but do you feel this sentiment is valid to Node.js today?

Rogers: The V8 team is making important improvements to the runtime, and node.js users all benefit from this.

We certainly don’t want to stop adopting that benefit any time soon, but we also recognize that the native module ecosystem can’t take new versions of V8 as fast as the V8 team produces them (every 6 weeks).

We think that two major releases a year, with one of those releases being LTS supported, is the right balance between stability and iterative improvements to the native ecosystem.

The technical blog Node v4.0.0 (Stable) gives more details about the latest release of Node.js. InfoQ readers looking to contribute to Node.js should visit the Working Groups list https://github.com/nodejs/io.js/blob/master/WORKING_GROUPS.md and read the contribution guide https://github.com/nodejs/io.js/blob/master/CONTRIBUTING.md.

Rate this Article

Adoption
Style

BT