The Community and Software Development
The building and nurturing of community is more important to software development than you might think.
November 3, 2016
Central to the development of open source software is the community. This is partly because many open source projects depend on contributions from unpaid volunteers, which makes community ties important. But even large enterprise projects must pay attention to community needs. Large scale projects like Hadoop, OpenStack, Hyperledger, and even Linux, all transcend corporate boundaries, which necessitates communities that span individual corporate cultures.
It's not surprising, then, that successful open source enterprises take on experts to help them develop, manage and nurture their communities.
Jono Bacon is one of the most visible open source community managers. For nearly eight years he was the community manager for Ubuntu. After that he spent time as the senior director of community at XPRIZE and as GitHub's community director. These days he heads his own consulting firm, with clients that have included IBM, Deutsche Bank, Intel and SAP.
Last week he picked up the reigns as the master of ceremonies at the All Things Open conference in Raleigh, North Carolina, where he took a few minutes on the event's opening morning to talk about community. He began by pointing out the obvious -- that the value of communities goes beyond the mere creation of software.
"I believe the community is at the center of how we innovate and how we just build a better planet," he said, before drawing attention to a graph indicating that the growth of communities is on the rise. "What this taps into is that people want to work together and we want to do work that's meaningful and impactful. One of the finest places to do this, of course, is technology."
He noted the monetary value of several open technology projects. The Smithsonian places Wikipedia's value at tens of billions of dollars, for example, and the Linux Foundation said in 2008 that to rebuild Fedora, Red Hat's community Linux distro, would cost somewhere around $11 billion using commercial software methodology.
"What this does is it changes the conversation," he said. "I've been going to conferences for years and we always talk about code ..., but what's as important, if not more important, is how we build communities and get people involved, because communities don't just provide code, they provide advocacy, documentation, translations, accessibility.... They bring new ideas, fresh approaches and diversity."
Bacon pointed out that there are many avenues open for building communities, but the problem is with building communities that are predictable. "That's difficult because human beings are messy, frankly. We're difficult people to figure out," he said.
"The way I tend to think of this is that there are three primary layers to this," he explained. "The first is collaboration. This is the software development life cycle piece. This is code, code hosting, collaboration, peer review, containerization, all those different pieces. This is the meat and potatoes of how we do this. But what sits on top of that is engagement. This is how you pull people in, how you get them excited and participating. How do you retain them? How do you govern them? How do you incentivize them in different ways?
"What's fascinating to me, and what's been a real revelation to me in the last three or four years, is that underlying all of this is the psychology of how people think and operate in behavior economics -- that we are fundamentally irrational human beings, but we're irrational in very predictable ways. When we understand that, it provides a framework, a scaffolding, a skeleton on which we can build effective collaboration, and on top of that we can build effective engagement."
He went on to suggest that he thinks it best to start with the bottom layer and work up "because you can only build effective collaboration if you understand how people think and operate." Unfortunately, his experience is that most companies tend to want to focus on the top "engagement" level.
"But the deeper you go down," he said, "you get more value. If you assess and measure collaboration you understand your developers better, but if you understand the psychology of how people operate, you really get to the heart of how human beings like to collaborate and build communities."
About the Author
You May Also Like