Why We Need Relational Technology

Open source is like a gifted child grown into a struggling adult. "So much potential! We thought it was the future! What is wrong with it!?"

It might feel strange to say that open source is struggling. There are millions of repositories on Github. The biggest and most successful companies in the world use and even release things as open source. Isn't open source thriving?

Certainly some parts of it are. And I would never presume to speak for all of open source. But I care about more than the license. To me, the promise of open source is technology that is accessible and collaborative, that empowers users instead of exploiting them. By *that* metric, open source is not living up to the dream.

I've been an open source contributor for over a decade now. And I keep seeing:

Open source maintainers burning out. Too often, they're working alone, trying to meet the needs of thousands or millions of strangers they've never interacted with beyond the occasional impatient request in an issue tracker. They started their project because they like to code, but now they're asked to be a project manager, community manager, support specialist, designer, fundraising expert, and more—often for little to no money. They're drowning.

New contributors getting discouraged and bouncing off open source. People are attracted to the values and the educational opportunities in open source, but they don't know how to find projects that are ready to mentor them. Too often they run into burned out maintainers who are struggling to stay afloat and don't have the energy to help newcomers. We encourage newcomers to contrinute right away, making them think they're only valuable for what they can do right now, instead of encouraging them to just be.

Valuable projects going un-funded or under-funded. So many open source projects provide real value to the world, but they don't get the support they need in return. Partially that's because maintainers are too busy and burned out to be effective fundraisers (see above) but it's also because projects don't have good relationships with users and stakeholders. Users have been trained by the tech industry to believe that all tech is built by faceless corporations trying to exploit them, rather than real people who will support them and who need their support.

Projects that fail to meet user needs. The lack of good relationships with users goes both ways. It makes it hard for users to support projects and it makes it hard for projects to serve their users. Many open source projects are very difficult to use. It's not just that they can't compete with the slick design of VC-funded or big tech projects. It's that they seem to have been designed only for extremely technically savvy users. Maybe because those are the only users who are in communication with the project.

Communities that struggle to adapt to change or fall apart due to conflict. Change is hard. Conflict is scary. And these communities are already under so much stress. They need support in working through problems, whether that's a tough technical decision, a changing culture, or the need for a new governance structure.

What do these problems have in common?

They're all, fundamentally, about relationships.

Good relationships make good technology

Some people use 'relational technology' to refer to technologies that shape relationships, like chat apps or social media. But that's putting the cart before the horse.

I'm focused on the inverse: how relationships shape technology.

Many of the apps that are considered 'relational tech' are built without care for the relationships of workers, users and funders (often advertisers and shareholders). This leads to exploitative technologies that often bring out the worst in people, rather than the best.

If we want technology that helps us have good relationships, then the people building, using and funding the technology need to have good relationships.

People with good relationships build better tech. This image illustrates why:

Img

Good relationships give us:

  • information, which helps us continually improve the technology
  • support, which helps our technology be more resilient and reliable
  • accountability, which helps us trust the technology
  • empathy, which gives the technology meaning

Relationships are the primary way that information is passed from one person to another. A good relationship can make all the difference between speaking up with feedback instead of quietly abandoning the project. Tools like issue trackers and kanban boards can help share information, but eveen then, relationships matter. Maintainers are more likely to pay attention to an issue shared by a friend or frequent contributor than one shared by a stranger. In a company, a product manager is more likely to prioritize a feature when someone with power over them has requested it. By strengthening relationships, we greatly increase the amount of information being shared, which is crucial for improving the technology.

Relationships also increase the support people get from each other. This can be financial support, allowing them to spend more time and energy on the project, or educational or emotional support allowing them to work through tough problems. The more support people get, the more resilient they are, and the more resilient the people creating a technology are, the more reliable the technology itself will be. (The XZ Utils backdoor is a painful example of this. The single maintainer behind the project was so under-supported that he made an easy target for compromising the whole project.)

Relationships increase accountability. We feel like if we have problems, or are harmed by their decisions, they will do their best to understand and fix the problem. This facilitates trust. If we trust the people building the technology, we can trust the technology—and when we trust tech, we're much more likely to recommend it to others, pay for it, and contribute to it.

Finally, building strong relationships gives you empathy into how your actions impact others. In the case of open source, an empathetic connection to users helps you see the impact that your work is having in the world, which in turn gives your own work meaning. And at the end of the day, what most of us want more than anything else is a life full of meaning.

What do good relationships look like?

The Relational Tech Approach page goes into much more detail about how to build good relationships. But here's the tl;dr:

A good relationship is one where people can share their needs with each other, and collaborate on getting those needs met.

We can use this needs-first lens to better understand the problems I articulated above.

Burned out maintainers are being asked to meet the needs of others, without having their own needs met. We can help them build relationships to other contributors who can meet their needs, and take on some of the work of meeting the needs of others. We can also help them build relationships to funders that are mutually supportive, instead of (a) draining or (b) non-existent.

Open source newcomers need a supportive environment, one in which their presense in the community, and relationships to other community members, is more important than whether they've made any pull requests. If leaders are honest about their needs and expectations, newcomers can pick projects that are a good match for them. If a leader says, "I don't have a lot of time for mentorship", then a newcomer who enjoys figuring things out for themselves might stick around, while a newcomer who learns through pairing, or likes to ask questions, might go find a better fit.

The lack of funding for projects, and the lack of fit for user needs, are two sides of the same coin. If users can share their needs with the project, that will make the project better and give them insight into the project's own needs, as well as a real stake in seeing the project continue. This is true whether you're talking about small dollar grassroots campaigns or convincing a company who depends on your open source project to invest. When people get something of value from a person they're in a relationship with, they want to reciprocate. But too often there's no relationship at all between projects, and their users and funders.

And then of course, communities struggling with conflict—either active conflict, or fear of it—are of course struggling with their relationships. By focusing on the needs of the different parties in conflict, we can understand what's at the heart of the conflict, and help resolve it.


Of course, it's not as simple as just forming good relationships. Forming good relationships is...surprisingly hard, actually? And "sharing your needs", oh boy, that might seem straightforward but many of us have big emotional blocks that make it extremely difficult to ask for help. I'd even go so far as to say that open source's culture has, historically, selected precisely for people who feel more comfortable doing things on their own than asking for help from others.

But that's why this consultancy exists. Why I put the "relational" in "relational tech". Because building relationships is hard, and complicated, and under-valued in open source, and I want to change that. So that open source projects and communities can flourish and have the quality, accountability, resilience and meaning that everyone deseves.

If you're intrigued, here are some things you can do next:

Regardless, thank you for reading!

Relational technology is built by and for people in relationship with each other.

Schedule a free consultation