|Node.js Fork - Now You Have A Choice To Make|
|Written by Alex Armstrong|
|Monday, 08 December 2014|
One of the big advantages of open source is that if you don't like the current state of things you can simply create a fork and make your own version of the project. However, not all forks are equal and not all are helpful. How do you react to the fork of the increasingly important Node.js?
Node.js has an official sponsor in the form of Joyent, a company, and it seems that many of the contributors didn't like the control it exercised over the development process. It seems like the main complaint was that Joyent was too slow. For its part, Joyent was concerned that Node.js continued it's amazing popularity and didn't want to make the wrong move - so things were thought about carefully before anything was done.
It also seems that Joyent had problems managing its unpaid volunteers and could be quite rude if things didn't go according to company policy, as evidenced in The Power of a Pronoun.
In an attempt to make good the problem, an advisory board involving developers from outside of the company was formed but it seems to have been too late. Eighteen, at the last count, Node.js contributors have jumped ship and decided that going it alone is a much better solution than waiting for Joyent.
The new project has a Github site and it seems to be called iojs although things are in the very early stages - a call for contributed logos and lots of community discussions. At the moment there is little difference between iojs and Node.js and many of the resources on the new site simply point to the Node.js site. All we currently know of the future road map is that you can expect things to move faster.
Is this good?
Well it is certainly within the rules of the game.
Most forks, however, consist of just one or two programmers taking the code and thinking that they can do better. Usually they fizzle out after a few months, but occasionally they do things better and turn a less than perfect project into something better.
Occasionally forks occur in big successful projects because enough people don't like the direction that the existing management is taking it in. The best known example is probably the Open Office-LibreOffice split. Both are still going and both have large user bases, i.e. both projects survived and are moving apart slowly but surely as time ticks on.
Currently it seems that the Debian project as been forked in an effort to get away from the dreaded systemd. In this case, however, it isn't clear that enough momentum exists to see the fork actually happen and develop into an alternative.
The problem is that a fork can seem like anti-democratic response. If you find yourself in the minority start a new game and be in the majority. It isn't so much taking your ball away and starting another game - it is more like cloning the ball and starting another game. If it is the democratic governance of the project that is in doubt, then perhaps this is a reasonable thing to do - but who is to say that this is the case?
Having two versions of Node might not be a problem at first, but as they inevitably drift apart it will become increasingly necessary to make exclusive choice.
If this isn't the case then what was the point of the fork?
The big worry is that the dilution of effort and attention may make both projects less viable.
To be informed about new articles on I Programmer, install the I Programmer Toolbar, subscribe to the RSS feed, follow us on, Twitter, Facebook, Google+ or Linkedin, or sign up for our weekly newsletter.
or email your comment to: firstname.lastname@example.org
|Last Updated ( Monday, 08 December 2014 )|