io.js and Node.js Have United and That’s a Good Thing
A Little History Lesson
For those of you haven’t been watching the action unfold over the last year, you might be wondering why the io.js fork came about in the first place. The primary reason: many of the core Node.js contributors wanted a more open governance model. The Node.js project was initially ran under a benevolent-dictator-for-life (BDFL) model, where a small group of people were given final say about any project commits. As stated in a blog by Joyent’s Scott Hammond:
“Historically, leadership ran the project fairly tightly, with a small core of developers working in a BDFL model. It was difficult for new people to join the project, and there wasn’t enough transparency for such a diverse, passionate community to have a sense of ownership. Consequently, a group of developers who wanted to operate under a more open governance model created the io.js fork.”
The tight BDFL model became a hot topic as it hampered getting out new Node.js features and improvements. The added issues with getting people involved in developing Node.js created a double effect that forced a need for change.
The Node Foundation
The Node.js Foundation is an independent foundation meant to govern the Node.js project. Previously, Joyent governed it. While Joyent will no longer be the official owners of the Node.js project, they are committed to actively contributing towards the project’s development. For the folks at io.js, this is exactly what they wanted. As Node.js now runs on open governance, the initial motivator for creating the io.js fork is gone. And with that, on io.js’ May 13th meeting, io.js officially decided to merge back into Node.js
The Path Forward
Much of the discussion and nitty-gritty about how implementation of the merge can be found on io.js’ Github repo, specifically issue 978 and issue 1664. To make a long story short: As part of the merge, the Node.js name will be used but the io.js code repo will serve as the base.