Io.js community thoughts on reconciliation
github.com
github.com
"Personally, what I would love to see is io.js take the Node name and handle all of the development through the community. Joyent could then select specific releases that they will support as LTS for enterprises, complete with the requisite paid support packages. That seems like it might be a scenario where everyone could win."
Not only is it a practical solution that fixes problems on both sides, there are examples of similar arrangements that have worked out well, such as the symbiotic relationship between RHEL and Fedora.
http://www.softpanorama.org/People/Stallman/history_of_gcc_d...
io.js is on a very fast release cycle using semver for versioning. The don't maintain the node.js concept of a "stable" and a "development" build (e.g., 0.10 and 0.11). Node.js developers want to use a "stable" release in production, and so were stuck on 0.10 for over two years.
io.js is integrating the latest v8 and libuv releases, giving developers access to new ES6 features (and enabling stable ES6 features by default). Node.js developers as stuck on an old V8 with poor ES6 support, requiring transpilers like babel.
io.js also now has significantly more core contributors than node.js. For what I understand, Joyent only had 1 dedicated node core developer for a long time.
If you look at the git history of the two projects, the Node.js project contributions have slowed down drastically, while many of the active developers have been contributing to io.js instead. This means more stability in terms of bug fixes and also more features
As such, APIs break/change often from release to release which makes it hard to keep up. This is made worse by the fact that old versions are completely unsupported.
This isn't really the V8 team's fault - this is just what they are paid to do. And to be fair, V8 is frequently used outside of Chrome because it's the best JS engine around.
But V8 is definitely the engine that has the best marketing. Chrome 1.0 launched with that great comic by the legendary Scott McCloud [1], where several pages were spent on explaining JS engine performance -- something that most people had never thought about before... Ever since then, it seems like many assume V8 remains unique regardless of what's happened in the real world.
The third-runner JavaScriptCore has always been pretty good about embedding, though. (Apple has offered it as a separate framework with a stable API since 2004 or something.)
It seems to me that the reason why Chrome went with the in-house V8 rather than just improving JavaScriptCore wasn't so much technical as political. Ultimately they ended up forking the entire WebKit too.
Honestly, this is akin to betting all your marbles on Microsoft not breaking or forever maintaining VB6. Kind of insane to me.
No, io.js is a fork of joyent/node by many original core contributors. io.js has more es6 support since it's based on a newer version of v8.
Development on joyent/node slowed to a crawl and now the NodeFoundation is begging the io.js developers to return. If things remain separate, joyent/node will probably not progress much more and eventually everyone will view io.js as the "next" version of node.
I think the best would be:
1. Joyent giving the name to io.js so they can keep developing Node.js at a fast speed while keeping the name to avoid confusion.
2. As 1 is highly unlikely, IMO the best next thing is for io.js to gain market and popularity as fast as possible.
Is that accurate? Or is the weight of the io.js community on-board and we're only reading a vocal minority's opinion in the github ticket?
What's this all about?
Once they got platform adoption and popularity, it's like they stopped investing in the platform.
At least that's my perception as an outside user.
Reconciling makes it sounds like they are merging. From the posts I've read in that thread, it seems like they're as far apart as ever.
As much as I would love to enjoy Node, I can't. It's just too much drama around it.
Strongloop, Joyent, none of these companies are guiding the Node community in the right direction (the Node community itself probably are too full of "strong opinionated" individuals that caused further drama).
Strongloop is basically a bunch of people with money, hired a few Node core contributors to get street creds (of course the Node core contribs people would be more than happy to get paid and be the face of a company... y'know, ego and money) and try to be the RedHat of Node (oh, they bought NodeFly and laid everybody off ).
Joyent saw "gold" in Node but it's quite clear they're having hard time to capitalize their first-mover advantages. Maybe Accounting still doesn't like the idea of paying a bunch of people with money to support an "open source project" and figure out how to make money later on.
Hence we're seeing how Joyent just didn't own NodeJS and leave everybody to dust with tons of contributions... if you want to own an OSS project, invest tons of resources, make sure you own a large percentage of the codebase, deliver tons of new and exciting features, put lots of marketing behind it, and make sure people have hard time to "catch up" thus creating an invisible barrier to enter. Hire the smart ones that still can somehow understand the codebase and contribute effectively. Another way is by providing sub-par documentation for the public to contribute, of course that's more "evil" than making it hard for individuals to get to know the codebase...
Now we have IO.js, a "community" driven with individuals who "work for corporation with Node interest" behind them...(those APM companies and Node-based service providers wanting to be the recognized leader in Node).
Let's be honest (and be real): Node is positioned to be the next popular framework after Rails. It's not hard to see why there are so much politics around it. The difference is that Rails has DHH as BDFL and he didn't want to make money out of Rails (if you don't count public speaking...) and Node has no BDFL...
Node has had a few BDFLs in its lifetime: Ryan Dahl (2009-2012), Isaac Schlueter (2012-2014) and TJ Fontaine (2014 onwards)
Almost all of Node's problems stem from Joyent. They're just incompetent at stewarding the Node project.