In Node.js, we have been fortunate to get as far as we have as a project largely by luck rather than deliberate direction. Our community, for its lack of clarity, has struggled with a cohesive strategy as a result. A few of us in Node.js decided to do something about it.
Many nonprofit organizations seek assistance with strategic planning…a successful strategic planning project requires that there first be clarity and agreement on the organization’s mission or purpose.
This includes a mission, vision, and values. We have many different stakeholder groups–the Foundation represents this to a fair extent and seeks to grow representing that more accurately and effectively. As we run through this practice with many different groups, making a venn diagram of shared values will hopefully represent the true core values of the Node.js community, from its ecosystem of communities.
At it’s core, Node.js is a collection of people working towards a shared goal. Improving people’s lives. This can be done through making software faster, it can be done by making empathetic APIs. This can be done by making a reliable platform, it can be done by being kind to each other. We work to improve the lives of the many individuals on this planet who rely on Node.js. We work to improve the lives of the many individuals on this planet who help make Node.js possible. — Myles Borins, TSC Director
Node.js is a massive project with global impact on the technology community. In the past, Node.js has relied on an implicit understanding of community members’ expectations. Moving forward, we need to document these implicit expectations so we can work effectively together and empower all members to act in the best interests of Node.js. To achieve this, at the Node.js Collaborators’ Summit following Node Interactive 2017, we ran our first Node.js Core Values workshop.
Discovering core values
Core values are used to guide every aspect of an organization. They enable action and allow us to grow in alignment with one another. These values consist of a few behavioral traits, usually 2–3, that are inherent in an organization. Core values lie at the heart of the organization’s identity. It can be far more challenging to establish these traits after an organization is moving along rather than building an organization up that embodies a set of values, but that isn’t a luxury we have now. We’ll work with what we’ve got and improve from here. And like most open source, it is living. The values documented will change and evolve.
Values serve as the boundaries within which the organization will operate in pursuit of its vision. It is critical to distinguish between core values (those on which the organization will never compromise and is willing to pay a price to uphold) and aspirational values (those that the organization espouses, but has yet to live up to in day-to-day operations). To be meaningful, values must be described in clear terms.
Workshop a starter set of values
For this initiative, we want as many perspectives from a representative group of the Node.js global community as we can muster. At Collaborators’ Summit October 2017, most of the participants were existing collaborators, Board Directors, project leadership, and excited-to-contribute community members. After we talk about the practical steps of how we ran this instance of the workshop, we’ll talk about how we can capture a wider range of input to get a high fidelity look at Node.js community values.
It is essential in running these types of workshops to encourage input from every single participant. In order to enable sharing, we have to minimize the criticism and maximize hearing big ideas. In design thinking, this work gets called divergence and convergence.
We walked through this slide deck, and answered questions for instruction.
Lots of yes. Hesitate on “no”ing. Encourage and embrace the ideas. Be honest. We diverge on big ideas and then converge on the patterns that emerge. Repeated ideas are okay! Tally these or write them down more than once.
Next, we gave the small tables 20 minutes to write down everything they could think of about values in Node.js. We heard so many questions. That’s exactly what should happen!
What IS a value? Can it be a technical value? Is it supposed to be my personal value I think Node.js has or what I have observed? What if someone else already mentioned it?
The answer to almost all of this was: “Talk through this with your table. Generally speaking, write it on a sticky note!”
After we had a fair amount of time in our small groups, it was time for everyone to get up. We moved up to a wall that was large enough to spread out the values, and then instructed everyone to place them up on the wall. As more were placed, then we started grouping them by theme and repeated words. Don’t stack them. It is powerful to visualize how big a cluster of a value can be!
Step back, pause, and observe(oh and take pictures!).
Core values from Oct. 2017 Collaborators’ Summit
Outcome of this instance
We now have a starting point to have a meaningful conversation about what the Node.js values may look like. We had about 150 participants in this October workshop. Regardless of the amount of people it attracted, it is not quite representative of our larger community yet, so we’ve got plenty of work to do. This documentation serves to empower others to repeat this process.
We need groups such as the communities around the world, the Board of Directors, Node.js Foundation staff to run through this exercise and publish results. It would be incredible to Venn diagram these reports and see the overlap. Our hope is to run these exercises and encourage others to at events around the globe over the next 6 months. By facilitating these sessions, you’re contributing to the future direction of Node.js and reaffirming to others that they have a voice in the community.
If you have a large meetup or are helping at a Node.js event internationally, please use the slides and this practice guide to perform the value exercise. Share it with the Community Committee by filing an issue with your report, so we can build our core values and create a plan for progress that is truly representative of the global Node.js community.
Thanks to Zibby Keaton, Sarah Conway, Tierney Cyren, Myles Borins, and Dan Shaw for editing and contributing to this effort.