These are the results of our first ever community-wide survey.
We talk to lots of users through our interactions on slack, the forum and elsewhere. This gives us good insight on specific tasks our users are trying to achieve. But it is often in the context of them asking for advice or guidance on how to complete the task. This can give a misleading view on what users are actually doing; we don’t always get to hear about the users who are successfully doing things without the community’s help. Nor do we get the background context of the questions we do see.
The goal of this survey was to get a better overall picture of how and where Node-RED is being used, and whether that fitted with our own perceptions. It was also a goal to validate the priorities of the project’s future roadmap.
A clear majority of the users we have daily contact with are using Node-RED in some sort of personal capacity and this is reflected in the survey responses.
But we don’t always get a sense of is the wider context that someone is using Node-RED in. This section sought to get a sense of that context.
As with many of the questions in the survey, respondents could pick all answers that applied to them. We did not further define the terms ‘in-production’ or ‘proof-of-concept’ and left it to the respondents’ own interpretation.
We then wanted to dig a little deeper in the non-personal scenarios - namely use in education and commercial/professional settings.
Broadly speaking, these results reflect our own impressions of how Node-RED is being used. At its core, we have lots of individual users, but there is an ever growing number of companies adopting Node-RED in various forms.
There’s a rich potential for Node-RED in educational settings, but it is not one we have dedicated much of the project’s resources to in the past.
These results show there are a handful of settings using Node-RED as part of their course material. We plan to follow up with those respondents to find out more details to see what else the project could do to support these activities.
This section was intended for those using Node-RED in professional settings. However many respondents completed this section regardless of how they responded to the previous question.
This gives us a good background view of the wider respondent set, which can also be filtered to just the ‘professional’ identifying set.
However, having done that filtering, the trends in the results were largely unchanged. The charts below reflect the complete response set.
Unsurprisingly, most respondents self-identify as Developers. But there is good representation across the whole range of roles.
Naming things is hard. It was only after we closed the survey and started compiling these results that I noticed we had two sections called the same thing. But no matter.
This shows we’ve managed to reach a good representation of experience with this survey.
There were no real surprises in our users experiences with these related technologies.
The relative inexperience around Docker, Serverless and Kubernetes is worth noting as we consider possible future plans around how we can help users manage deployments across larger scale installations.
The large proportion of Home Automation usages correlates strongly with the personal usage responses. Edge device logic is also worth noting.
Respondents predominantly run Node-RED locally in some form, with Raspberry Pi 2/3 being the most popular. In the cloud arena, IBM Cloud is the most popular, reflecting the project’s heritage and that we provide a Starter Kits application in the IBM Cloud catalog.
The distribution of operating systems is a somewhat natural reflection of the types of devices being run on. The popularity of Windows 10 should be noted - we don’t routinely develop and test on Windows in the core of the project and rely on the community to feedback issues. That isn’t ideal and we need to find a way to address it.
An important thing to note here is the high proportion of ‘not sure’ responses - this implies a user base that is less interested in node.js itself and takes whatever it is given.
The range of responses here will help us identify where we need to provide more documentation and examples. A decent proportion of respondents who asked about version control were unaware of the Projects feature. We need to improve some of the Projects user experience and think about how we can enable it by default at some point.
A key requirement for the project will be to make it much easier for users to have a proper development workflow that can maintain separate development and production instances.
The following questions help us to identify what nodes are important to users.
Publishing nodes is a key way the community contributes back. Many users have published one or two nodes, with a small number of users who have published more.
The reasons for publishing a node are fairly varied. The high proportion of respondents says they made a copy of an existing node is slightly surprising. We’d like to be able to dig into those responses a bit more to find out why a copy was needed.
Understanding how the community has engaged with the development activities of the project will help us towards our goal of getting more people contributing.
Many issues faced by users are more how-to type questions rather than quality issues in the code. That’s a good reflection of the code quality, but reflects less well on the documentation and learning resources we provide.
The survey asked respondents what three things they felt Node-RED was missing, as well as any other feedback they wanted to share. This resulted in 1475 comments of which 1166 were identified as feedback we can learn from. Those comments were then classified into a hierarchy of categories. The chart below shows the relative number of comments under each category - click on each one to see more details.
There are no immediate conclusions to draw from this, but these results will help us to shape on the roadmap for the future of the project.
The survey was open for submissions for 45 days from March 12th to April 26th, 2019. It was publicised across all of our social channels - the forum, slack channel and Twitter account. It was also shared in the unofficial Node-RED Facebook group as well as amongst the Node-RED Japan User Group members.
In total, there were 871 responses.
No information was collected on how a respondent found out about the survey so we don’t know which were the more effective methods.
The questions were written and review by the core Node-RED team. The goal was to get a general picture of the Node-RED user community. Through the forum we see a lot of activity from the user community. But it tends to be users asking questions when they are stuck, so it doesn’t give us a good view of the wider community.
As this was the first time we’ve done such a survey, inspiration was sought from various, more established, tech community surveys. This helped identify the sorts of questions we could be asking, albeit tailored to Node-RED.
Node-RED: Low-code programming for event-driven applications.
Copyright OpenJS Foundation and Node-RED contributors. All rights reserved. The OpenJS Foundation has registered trademarks and uses trademarks. For a list of trademarks of the OpenJS Foundation, please see our Trademark Policy and Trademark List. Trademarks and logos not indicated on the list of OpenJS Foundation trademarks are trademarks™ or registered® trademarks of their respective holders. Use of them does not imply any affiliation with or endorsement by them.