A huge reason for Node‘s explosive popularity is its thriving ecosystem. Likewise, it’s well understood that a huge reason for that ecosystem’s growth is npm, Node’s package manager. Isaac Schlueter designed npm to make it easy to build and publish new modules, and it’s safe to say that his expectations have — at least — been met. Sometime in the last few weeks npm crossed the 50,000-package line, and there’s no sign of it slowing down.
npm is important and takes work
Node and npm are so interdependent that at this point it doesn’t make much sense to discuss one without the other. But this didn’t “just happen”. The visible piece of npm is the program itself, but just as important is the infrastructure, which has to deal with the load generated by over a million requests a day. It has scaled better than a lot of people (including me) would have expected, due in part to careful design paired with sound technical decision-making.
Of course, it’s taken a lot of hard work to get there. From the beginning npm has benefited from the generosity and hard work of its users. First Iriscouch and then Nodejitsu (after they acquired Iriscouch) have done a lot of mostly invisible work to make Node’s success possible by running the npm registry. They’ve contributed hosting, bandwidth, and a lot of operational expertise, mostly because it needed doing. Although there have been some hiccups along the way, the quality of the experience for those of us using it has been stellar.
Helping Node grow by helping npm grow with it
However, Node’s growth hasn’t slowed down, and recently Nodejitsu hit a resource wall and (asked us all to help). For me, it was a no-brainer to contribute. I use npm all day, every day, and it’s hands-down the best package management tool I’ve ever used (and I’ve used most of them at this point).
Likewise, New Relic distributes our Node module through npm, and the simplicity of using npm is a big part of what makes it so easy to get up and running with New Relic. The Node community has been very good to New Relic, and it only makes sense that we give back. We’re proud to be Gold Sponsors of
Why ScaleNPM matters
This isn’t just altruism on New Relic’s part. A healthy, free npm is incredibly important to the development of the platform and the community. As individuals building things with Node, we participate in that community and want to see it continue to grow and thrive. Node is a great tool for building out new products and architectures very quickly, and having one place to look for things (that’s always available) is crucial.
As a business, we’ve made a bet that Node will be an important player in the open-source community for quite a while to come. In fact, it’s still early days. Mikeal Rogers (chief organizer of NodeConf and co-organizer of JSFest) and Max Ogden (author of “JS for Cats” and “Node for Cats”) have said that with Node core almost finished, the emphasis has switched to what they call “moduletopia”, and that simply can’t exist without npm.
The good news
The good news is that the needed funds have already been raised: the project hit its fundraising goals in about a week, and went on to collect 50% over that goal. This is undoubtedly a good thing for the medium-term health of the project. However, I think this is the first of many steps towards making Node and npm true products of the community who depend on it. When it’s time to take the next step, if you or your organization have gotten value out of Node, you should consider contributing yourselves.