Node.js State of the Union 2017

This blog is brought to you by the Executive Director of the Node.js Foundation Mark R. Hinkle.

As we come into this year’s Node.js Interactive conference it’s a good time to reflect on the State of Node.js, and by any reasonable measure the state of Node.js is very strong. Every day there are more than 8.8 million Node instances online, that number has grown by 800,000 in the last nine months alone. Every week there are more than 3 billion downloads of npm packages. The number of Node.js contributors has grown from 1,100 contributors last year to more than 1,500 contributors today. To date there have been a total of 444 releases, and we have 39,672 stars on Github. This is an enviable position for any technology and a testament to the value of Node.js and the dedication of the Node.js community.

Growth of Node.js From a User Perspective:

We see incredible success with Node.js for front-end, back-end and full stack development. In this year’s Node.js User Survey we got incredible feedback and gained increased understanding of how Node.js is being used. We know that the the biggest use case for Node.js is back-end development, but users are also developing cross-platform and desktop applications, enabling IoT and even powering security apps. This week we are launching our annual survey again to identify trends and track our progress. I highly encourage you to take the survey and share your insights with the rest of the community.

Node.js is also fortunate to be getting praise from several reputable third parties. The Battery Ventures Open Source Software Index (Boss Index), which ranks popular open source applications based on public interest, user activity, job impact and overall open source community impact has ranked Node.js the 4th most important open source project. Node.js is in good company as only Linux, Git and MySQL were ahead of Node.js; we beat out well-established and impactful projects like Docker, Apache Hadoop and Spark.

The analyst community has taken note as well. Forrester published a brief earlier this year extolling, “Digital Transformation Using Node.js.” They said:

“The growth of Node.js within companies is a testament to the platform’s versatility. It is moving beyond being simply an application platform, and beginning to be used for rapid experimentation with corporate data, application modernization, and IoT solutions.”

We also are seeing success as one of the most highly trafficked websites on the Internet according to research done by W3Techs. Node.js’ success at Twitter, LinkedIn, The New York Times, Netflix, Paypal and Yahoo! has significantly helped lend credibility to the project.

Open Source: The Punk Rock of the 21st Century

When I speak to groups and talk about Node.js I usually start with a very technical definition of what Node.js is and does. I talk about how Node.js utilizes the Chrome V8 engine to execute JavaScript on the server. This is huge for extending the language of the browser to the server and providing a foundation for developing many new kinds of applications.

For those uninitiated in JavaScript development, I sometimes get a blank stare. However, when I talk about the incredible list of companies that are using Node.js — Airbnb, Lowes, Twitter, LinkedIn — and many others they have heard of I start to peak their interest.

Once I have their attention I like to use the analogy that open source developers are the punk rockers of their generation, something I truly believe. I then explain the reasons why I see similarities between punk rock and open source, particularly Node.js:

….many bands self-produced recordings and distributed them through informal channels….technical accessibility and a DIY spirit are prized in punk rock…….Punk rock is meant to be our freedom. We’re meant to be able to do what we want to do…. The issue of authenticity is important in the punk subculture — the pejorative term “poseur” is applied to those who associate with punk and adopt its stylistic attributes but are deemed not to share or understand the underlying values and philosophy…. At the end of the 20th century, punk rock had been adopted by the mainstream, as pop punk and punk rock bands such as Green Day, the Offspring and Blink-182 brought the genre to widespread popularity.

Wikipedia — Punk Rock

Node.js developers share this same DIY spirit, authenticity and passion for their work. That passion has made Node.js a success. The lack of formality and the ability to collaborate share and express themselves has enabled Node.js to grow.

And just like punk rock, Node.js has gone mainstream. A small group of developers and users has risen to a level that is enviable by many mainstream technologies. As Node.js moves forward, it’s important to improve while not losing the “indy spirit” that has made us successful. It’s also important to accept the responsibility that we have to keep Node.js sustainable for the millions of users who depend on our technology every day.

The Future of Node.js: Grow, Engage, Educate

So what happens when you have meteoric success like Node? Sometimes you hit speed bumps and reach impasses. You face new problems and you start to reevaluate how you do things so you can continue to flourish. As we move forward with Node.js we need to make sure that we are working on making sure Node.js is a sustainable technology that will continue to support the needs of our developers and end users.

This year’s Node.js 6 was the most popular release — our LTS releases are increasingly becoming the most popular downloads. This move to provide a stable trusted version is one of the steps on the path to encouraging more users to engage with Node.js. To that end, I am advocating a very broad set of initiatives going forward — grow, engage and educate.

Grow

Node.js’ growth has been fairytale like. Usage of the project is amazing. However, for Node.js to continue to succeed there needs to be more growth. Not just in raw numbers but in new industries, companies and organizations, all of which help build a more diverse developer and user core with a broader perspective.

We need to continue to share our success through press and analysts, so more users can discover not only the value of Node.js, but also the best places to use Node.js. We need to help enable our users to evangelize the technology and provide a platform to grow, through publications like Node.js Collection and more.

Engage

Going forward we need to continue to engage users not only in GitHub, but through other venues that facilitate communication, like meetups, blogs and larger events. We need to help broaden our ecosystem and maintain our relationships with other technologies like JavaScript frameworks, databases, load balancers and cloud providers.

We need to make sure we foster a strong relationship with the package ecosystem that we critically depend on. 4,800 npm packages are published every week. That’s one package every two minutes 24 hours a day providing an unbelievable number of options to extend Node.js for a variety of uses. We want to where appropriate have strong relationships with those developers to help ensure they have the security and support they need to be successful.

“The community of npm and Node.js developers is now larger than the population of New York City, and they download more than 500 packages of reusable code every second,” said CJ Silverio, Chief Technology Officer of npm, Inc., which hosts the npm Registry of JavaScript packages. “Companies of every size have invested in developing within this ecosystem because it’s robust, secure, and growing more powerful every day.”

Node.js is one the most used workloads on Google, Microsoft and Amazon’s clouds. Twilio’s latest serverless offering is written and developed on Node.js. Google’s Cloud Functions is written in JavaScript and executed in a standard Node.js runtime.

Node.js is the most popular language on Bluemix. The developer base is very comfortable getting started with Node, and all of the other languages that IBM supports for polyglot developers. “Our view of the world is that it’s all about APIs. How to discover and make use of them, whether human or machine readable,” said Todd Moore, VP of Open Source Technologies at IBM in an interview with The New Stack.

We should continue to build our relationships with these companies, share stories about how best to use Node.js within these different environments, and engage with new developers who are sprouting up around cloud-native applications and arm them with best practices around Node.js.

Educate

We need to continue to educate our potential users and developers. The Code & Learns and NodeSchools have been very successful. We also need to continue to reach out to potential users who aren’t familiar with or as comfortable with open source and help them get up to speed with the Node.js Community and how to contribute to the project.

One of our biggest initiatives is around certifications that will dovetail with organizations providing training. Certification is not education, but it should provide a benchmark for training organizations to shoot for.

Overall, Node.js is in a good place, but we can and will be better. We need to evaluate our systems and structures to make sure we are ready for the next 8 million Node.js instances and to help encourage a better more effective community and collaboration. Our future relies on our ability to adapt and nurture that success and drive toward a stronger ecosystem that involves more developers, solution providers and others who can continue the work that has been done to date.

A single golf clap? Or a long standing ovation?

By clapping more or less, you can signal to us which stories really stand out.