When I joined Joyent last summer I quickly realized that, despite the huge success of Node.js in the market and the tireless work of many here at Joyent, there were challenges in the project that we needed to address. Through discussions with various project contributors, Node.js users, ecosystem vendors and the Node.js Advisory Board, it became clear that the best way to address the concerns of all key stakeholders (and the best thing for Node.js as a whole) was to establish the Foundation as a path for the future.
The biggest and most obvious challenge we sought to address with the Foundation was the friction that existed amongst some developers in the Node.js community. 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. That team has done a great job innovating on governance and engagement models, and the Node.js Foundation’s models will be based on those policies to ensure broader community engagement in the future of Node.js. We welcome community review and feedback on the draft governance documents.
With the recent vote by the io.js TC to join the Node.js Foundation, we took a giant leap toward rebuilding a unified community. @mikeal, @piscisaureus and others have done an excellent job evangelizing the value of the Foundation, and it’s great to see it have such positive impact this early in its formation.
In the user community, enterprise adoption of Node.js has skyrocketed with an abundance of success stories. But behind every successful project is someone who is betting their career on the choice to build with Node.js. Their primary “ask” is to de-risk the project. They want stable, production-grade code that will handle their technical requirements and an LTS that matches what they get from other software. The Foundation will get that right. Donations to the Foundation will provide the resources we need to broaden and automate the necessary test suites and expand coverage across a large set of platforms. We are working now on codifying the LTS policy (comments welcome here) and will establish the right 6-9 month release cadence with rigor on backward compatibility and EOL horizon.
Users also want the project to be insulated from the direction of any single company or individual. Putting the project into a foundation insulates it from the commercial aspirations of Joyent or any other single company. It also facilitates the creation of the vibrant vendor ecosystem around Node.js that users want. Users want to see relevant innovation from a strong group of contributors and vendors.
The vendors themselves have a clear set of requirements that can best be addressed by the Foundation. They want a level playing field and they want to know they can monetize the contributions they make to the project. We need a vibrant ecosystem to complete the solution for the users of Node.js and drive additional value and innovation around the core project. The ecosystem is the force multiplier of value for every piece of technology and Node.js is no exception.
Finally, in addition to risk mitigation, transparency, neutrality and an open governance model, the Foundation will provide needed resources. Over the past few years Joyent and other members of the community have invested thousands of hours and millions of dollars into the project, and much has been accomplished. Going forward, Joyent will continue to invest aggressively in the success and growth of Node.js. But now, with the support of new Foundation members, we will be able to do even more. Investments from new members can be used to expand coverage of testing harnesses, establish API compatibility tests and certifications, extend coverage for additional platforms, underwrite travel expenses for technical meetups for core contributors, build training programs for users and developers, expand community development efforts, fund full-time developers and more.
I’m convinced the Foundation is the best vehicle for balancing the needs of Node.js users, vendors and contributors. The project has a brilliant future ahead of it and I am more optimistic than ever that we can work together as one strong community to secure that future.
2015.05.13, Version 0.12.3 (Stable)
V8: update to 188.8.131.52
uv: upgrade to 1.5.0
npm: upgrade to 2.9.1
V8: don't busy loop in v8 cpu profiler thread (Mike Tunnicliffe)
V8: fix issue with let bindings in for loops (adamk)
debugger: don't spawn child process in remote mode (Jackson Tian)
net: do not set V4MAPPED on FreeBSD (Julien Gilli)
repl: make 'Unexpected token' errors recoverable (Julien Gilli)
src: backport ignore ENOTCONN on shutdown race (Ben Noordhuis)
src: fix backport of SIGINT crash fix on FreeBSD (Julien Gilli)
Source Code: http://nodejs.org/dist/v0.12.3/node-v0.12.3.tar.gz
Macintosh Installer (Universal): http://nodejs.org/dist/v0.12.3/node-v0.12.3.pkg
Windows Installer: http://nodejs.org/dist/v0.12.3/node-v0.12.3-x86.msi
Windows x64 Installer: http://nodejs.org/dist/v0.12.3/x64/node-v0.12.3-x64.msi
Windows x64 Files: http://nodejs.org/dist/v0.12.3/x64/
Linux 32-bit Binary: http://nodejs.org/dist/v0.12.3/node-v0.12.3-linux-x86.tar.gz
Linux 64-bit Binary: http://nodejs.org/dist/v0.12.3/node-v0.12.3-linux-x64.tar.gz
Solaris 32-bit Binary: http://nodejs.org/dist/v0.12.3/node-v0.12.3-sunos-x86.tar.gz
Solaris 64-bit Binary: http://nodejs.org/dist/v0.12.3/node-v0.12.3-sunos-x64.tar.gz
Other release files: http://nodejs.org/dist/v0.12.3/
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512 ff48b814cdc54a1df10c60a476b2f6833549551a node-v0.12.3-darwin-x64.tar.gz a3a808aff450aa04f535fec9517faeca01492e15 node-v0.12.3-darwin-x86.tar.gz bb07dacb0802386719cf619125546ea483f4eb93 node-v0.12.3-linux-x64.tar.gz 4d5c42df29277526ed32d866d7b2491242706c14 node-v0.12.3-linux-x86.tar.gz df6a9b56c2be1a1c423786917eccaac10c786d3f node-v0.12.3-sunos-x64.tar.gz 124324b3387993512a111fed776d979a89254b1d node-v0.12.3-sunos-x86.tar.gz 410d37d74775bf0401b06ecc01f71d181c9c99e6 node-v0.12.3-x86.msi 8a64eab15c0c0c74d480f75c5362c06ce3e5e1ac node-v0.12.3.pkg b0b02a254c06ebf2b1695900181baa3ffd206584 node-v0.12.3.tar.gz 38901d7f5738f39ed69312215a133e3007300be2 node.exe 4f2d0b3214b4ded6dac35144f22610db2f1be438 node.exp f3d8801fc939fe3178311fe4f7aa23d7cca4a82a node.lib 8f71bbb0353bf56bbafabe7b32719e0534386e02 node.pdb 30b4bbcf7fdf02647e99bdfa3724329a61bf6328 openssl-cli.exe 42c3329db1002b48749c1519d17b51418045f850 openssl-cli.pdb 3677034221eeb300d7cd0cf2aaf3d172ab05fd11 x64/node-v0.12.3-x64.msi 044c4b67a835ca3873df3844a074230a825aae5f x64/node.exe a7e22fa741c1ab8fcfe7c51610dad63b666a93f9 x64/node.exp 5a1fcc12bccd5fc61d63381c02b0c676e509f18c x64/node.lib af0451dd1db225c7c46e5ace67d8de1cacf66349 x64/node.pdb 88a06524bac25b80e776ab4f393df175fa5d6940 x64/openssl-cli.exe e29b5871e9822a74dc2ea34eb3771a4a870f307d x64/openssl-cli.pdb -----BEGIN PGP SIGNATURE----- Comment: GPGTools - https://gpgtools.org iQIcBAEBCgAGBQJVVAmKAAoJEFCjBR+IjGKN/80P/ilLD8gRvTw8bY+6QumWnjJx 4pOcthnjp1z4Dh/0zdKN82vDaogXfzjhE0ZxwwJboWKkN6ME6tc+ayAeEEX3Dtia OUIUSHRx5+MlrcdBjE61TPdfUiiKRh7b185iyDotD5En41zcVhG+QWC72MeMo1aP uF0lwO067gWJojypl75IFSlgnT3GtUWL1ojY4rCu8Cz0mzaED0OjdiZ4pJGg5c0y hcwjwHZ73c9pXwzDFRjUH2BruWBYI7bWtyh7vMfNMTEOkjSEYLM1OX7fVeBBbSE4 RLTxjuZnQXx1GWIfjU1mWbjAOPOO/ON95IrFzD+EY4eh1kYK4H0Bq3Mz0eR8oxlt Ird4X79JbghmsvLVX2KInCIixdJMNhI5ahWpHwMnAKJxlCSbxGJwIWkxHWFNCGs7 j62pFZqPhB3e6Z8DTADOYam3ZzIW0BN33W61u26I4yehOpKVbSGyiwkfpp9vzoKJ uxqiaWFeh4ytJOtnr4zJMe80Tgz5BllvNy4t8SIEUEJZDNFvBQqFamj5rol9CCvJ DzVm2NOXAmHM6DVLkUofYOB6fc517NLt3c0j8Wm8TXbxNGrQlaEjSCB4CY2n1BDB BNf/te7frV4emtwE3R5+UA+3xgZkdmUiniguGigceIqupKH3O7wlTTLk0N3JNssd MvSLfPrzlji20kOJojKr =N8jX -----END PGP SIGNATURE-----
In February, we announced the Node.js Foundation, which will steward Node.js moving forward and open its future up to the community in a fashion that has not been available before. Organizations like IBM, SAP, Apigee, F5, Fidelity, Microsoft, PayPal, Red Hat, and others are sponsoring the Foundation, and they’re adding more contributors to the project. The mission of the Foundation is to accelerate the adoption of Node and ensure that the project is driven by the community under a transparent, open governance model.
Under the aegis of the Foundation, the Node.js project is entering the next phase of maturity and adopting a model in which there is no BD or project lead. Instead, the technical direction of the project will be established by a technical steering committee run with an open governance model. There has been a lot of discussion on the dev policies and governance model on Github. As we move toward the Foundation model, the core team on Node.js is already adopting some of these policies as shown here.
As we open a new chapter with the Foundation, we also close a remarkable chapter in Node.js, as TJ Fontaine will be stepping back from his post as Node.js Project Lead. TJ has come to be an integral member of our team, and his contributions will have long-lasting effects on the future of Node.js. Although he will not be as active, TJ will continue to act as a resource for helping the Node.js project as needed.
I would like to thank TJ for his time and contributions to Node.js and to Joyent. I have witnessed firsthand the kind of impact he can have on a team, and his technical chops will be missed. As we take this next major step in the growth of Node.js, we wish TJ luck in his future endeavors.
Open source projects are about the software, the users, and the community. Since becoming project lead in 2014, I've been privileged to be a part of the most passionate, diverse, and vibrant community in the ecosystem. The community is responsible for Node.js' meteoric rise and continued adoption by users and companies all over the world. Given the strength of its community, I'm confident that Node.js is heading in the right direction. With that said, it's time for me to step back.
For the past year, I've worked directly with community members to improve Node.js, focusing on improving the parts of the project that benefit everyone. We wanted to know what in Node.js was working for them and what wasn't. During the life of a project, it's crucial to constantly reset yourself and not lose sight of your identity. Node.js is a small set of stable core modules, doing one thing, and one thing well. Every change we make, we tried to make sure we were being true to ourselves and not violating our ethos. We've focused on eliminating bugs and critical performance issues, as well as improving our workflows. Ultimately, our goal was to ensure Node.js was on the right path.
The formation of the Node.js Foundation couldn't have happened at a better time in the life of Node.js. I believe this will be the tipping point that cements Node's place in technology. Soon, the foundation will be announcing its first meeting, initial membership, and future plans for Node.js. The project is on the right path, has the right contributors and is not tied to one person. It has a vibrant and loyal community supporting it.
I want to take some time to highlight a few of those who have made an impact on Node.js. This list only scratches the surface, but these are a few of the unsung contributors that deserve some attention:
Node.js wanted to have a living breathing site, one that could attract our community and be the canonical source of documentation and tutorials for Node.js. Leading the charge has been Robert Kowalski and Wyatt Preul, who have been incredibly helpful to the Node.js ecosystem in many ways, but most notably by helping breathe life in the website.
One key point of the maturity for Node.js has been its growing predominance worldwide. Therefore, we've been working to improve our support for internationalization and localization. Node.js is so widely accepted that our users need Node.js to support internationalization so they can better support their own customers. Luckily, we have Steven Loomis leading the charge on this — he has the unique privilege of being a member of both ICU and Node.js.
Node.js is seeing adoption across many new platforms, which means we need to collaborate with the community to support those platforms. Much like we have Alexis Campilla working to support the Windows platform, we have people like Michael Dawson working on adding support for PowerPC and zSeries. Additionally, he's been able to leverage the technical depth of IBM to help squash bugs and do work on our VM backend of V8.
OpenSSL has had its share of issues recently, but it's not the only dependency that can be sensitive to upgrade -- so many thanks go to James Snell for working to help simplify and manage those upgrades. James has also been working together with our large, diverse, and complex community to make sure our development policies are easy to understand and approachable for other new contributors.
Finally, I want to make a very special mention of Julien Gilli, who has been an incredible addition to the team. Julien has been responsible for the last few releases of Node.js — both the v0.10 and v0.12 branches. He's done wonders for the project, mostly behind the scenes, as he has spent tons of time working on shoring up our CI environment and the tests we run. Thanks to him, we were able to ship v0.12.0 with all our tests passing and on all of our supported platforms. This was the first Node.js release ever to have that feature. He has also been working tirelessly to iterate on the process by which the team manages Node.js. Case in point is the excellent documentation he's put together describing how to manage the workflow of developing and contributing to the project.
In short, hiring Julien to work full time on Node.js has been one of the best things for the project. His care and concern for Node.js, its users, and their combined future is evident in all of his actions. Node.js is incredibly lucky to have him at its core and I am truly indebted to him.
It's because of this strong team, community, and the formation of the Foundation that it makes it the right time for me to step back. The foundation is here, the software is stable, and the contributors pushing it forward are people I have a lot of faith in. I can't wait to see just how far Node.js' star will rise. I am excited to see how the contributors grow, shape and deliver on the promise of Node.js, for themselves and for our users.
Moving forward, I will still remain involved with Node.js and will provide as much help and support to the rest of the core team as they need. However, I won't have the time to participate at the level needed to remain a core contributor. With the core team and the community working together, I know they won't miss a step.