What We Owe to Each Other

Rate this content
Bookmark

Open source has won, and it's the center of gravity for our community. Whether we're contributors to open source projects, commercial product engineers, companies, developer advocates, or something else, we're all a part of this community. And we owe it to each other, and to ourselves, to leave the community better than we found it.


But how do we do that? What responsibilities do companies have to the community? Or developer advocates? Or OSS contributors? How are we failing those responsibilities, and how can we do better?


In short, what do we owe to each other? Let's find out.

This talk has been presented at JSNation 2023, check out the latest edition of this JavaScript Conference.

FAQ

Brian Hughes has contributed to the open source community in various roles including starting his own projects, being actively involved in the Node.js project, working in developer relations, and presenting at numerous conferences.

Brian Hughes views the relationship between companies and the open source community as symbiotic. He emphasizes that companies benefit significantly from open source and should support these projects with time and money to foster mutual growth and improvement.

Companies can contribute to open source projects by providing financial support, sponsoring projects, becoming members of relevant foundations, and allowing developers to spend a portion of their work time contributing to open source projects used by the company.

Developer relations, or DevRel, is a field that connects companies and the open source community. DevRel professionals engage in activities like attending conferences, giving talks, and running workshops to promote products and gather community feedback, facilitating a two-way communication between the community and companies.

Open source project maintainers are crucial for the development and sustainability of projects. Their responsibilities include ensuring the project is well-documented, inclusive, and adaptable to changes. They also play a key role in welcoming new contributors and managing the project’s growth.

Individuals can contribute by engaging respectfully with projects, such as reporting bugs kindly and constructively, and by fostering inclusivity. Developers in DevRel roles should strive for transparency, avoid exploiting relationships, and ensure their activities benefit both the company and the community.

DevRel professionals may face ethical challenges such as balancing company interests with community benefits, resisting pressure to exploit personal relationships for business gains, and ensuring they convey community feedback effectively to their companies.

Documentation is critically important in open source projects. It ensures that the code is usable and accessible to others, facilitating easier adoption and contribution, which are essential for the project’s success and longevity.

Bryan Hughes
Bryan Hughes
24 min
05 Jun, 2023

Comments

Sign in or register to post your comment.

Video Summary and Transcription

The Talk discusses building and supporting the JavaScript community, the role of companies in open source, the importance of time and collaboration, reporting bugs with kindness, the challenges of developer relations, the role of maintainers and documentation, the importance of inclusivity, embracing change in project development, supporting ourselves and the community, and finding hope for a better community.
Available in Español: Lo que le debemos a los demás

1. Building a Thriving JavaScript Community

Short description:

Hi, JS Nation. I'm Brian Hughes, a staff front end engineer at Patreon. I've been part of the open source community for a decade, playing various roles and contributing to projects like Node.js. In this talk, I'll discuss how we can grow and support our community and what it means to be an upstanding citizen.

Hi, JS Nation. My name is Brian Hughes and I'm a staff front end engineer at Patreon. I've been a part of the open source community for about a decade now, which is kind of wild to think about. You know, I've seen this community grow so much during that time.

And you know, I've been fortunate that I've been able to play a variety of roles within the community. You know, I've started my own smaller open source projects. I used to be pretty involved in the Node.js project. I've also been working as developer relations in the community. I presented at lots of conferences, and, you know, I've used open source in my day-to-day work a lot.

And like over this time, I've thought a lot about like what it takes to build a good community and how we can help this community thrive because we really are independent at the end of the day. So I want to spend this talk talking about exactly that. How do we help grow this community? How do we help each other out? Basically, you know, what do we owe to each other?

So this talk is inspired by this book of the same title by T. M. Scanlon. Scanlon's a moral philosophy professor, wrote this book about 25 years ago. I don't expect many of you have actually read this book. Admittedly, I'm only about a third of the way through this book myself, but a lot of you have seen this show, The Good Place. So it turns out The Good Place is actually inspired by T. M. Scanlons book and it kind of has that philosophy at the core of the show and the show. I love the show so much because it's all about growing and becoming better than we were yesterday and how we come together, support each other. And it's, you know, through all of these characters growing closer together that they end up, you know, succeeding with all of their wild adventures they go on. And it's just all about community. You know, that's what they do is they form their own small community. And you know what? We're a community, too. It may not always necessarily seem like that, but we really are. Even if we're just using open source, we're still taking part in this community. And, of course, for all of you listening right now, this is a conference for us to come together as a community. And I think this is so important. And it's led me to ruminate on this question of what does it mean to be a good community an upstanding citizen in the JavaScript community.

2. The Role of Companies in the JavaScript Community

Short description:

This is a complicated question. And there's no one-size-fits-all answer to it. A lot of it depends on what kind of role you have within the community. I'm going to focus on three in specific: the role of companies, developer relations, and project maintainers. Companies stand on the shoulders of open source giants and benefit from open source. It's important for companies to give back by supporting open source with time and money. Companies and the open source community have a symbiotic relationship. A good example is Observable sponsoring the CodeMirror project, which improved their product and helped the project grow. Companies should consider contributing to open source projects like becoming members of the OpenJS Foundation.

This is a complicated question. And there's no one-size-fits-all answer to it. A lot of it depends on what kind of role you have within the community. And we could spend all day talking about there's so many different kinds of roles people can play. But we only have so much time together, so I'm going to focus on three in specific. I'm going to focus on the role of companies, focus on the role of developer relations, and on that of project maintainers themselves.

Let's start by talking about companies and the role they have to play in the JavaScript community. Because really these days, companies stand on the shoulders of open source giants. Every single web app I can think of that's out there today I'm sure has open source at the heart of it. How many web apps that companies have created are getting out there, getting customers and all of that, how many of those products are based on top of Node.js in the or Python or some of the other open source server runtimes? How many apps are written using React? How many are written using Webpack to build? How many use TypeScript? VS Code? All of these are open source. Some of these were created by companies, yes, but not all of them. But they're all open source regardless. And so, you know, the fact that we can build code so much faster, we can build more complicated apps faster than we used to be able to, even if it still feels like it's, you know, pulling teeth at times, there's so many options. We have improved so much because of open source. And companies benefit from this. And so, you know, I think it's really important for companies to give back. And the main way that companies can do this is supporting with time and money. And, you know, I know this sounds like, you know, companies should be altruistic, but it's not really the case. There's a symbiosis between companies and the open source community. And companies supporting open source ultimately helps them, too.

As a good example, I used to work at a startup called Observable. And we based our code editor on the open source project CodeMirror, which is a great project, by the way. Just a lot of great work from Ren, the lead maintainer, and everyone else who worked on it. And because we were using this as such a core part of our product, Observable actually ended up sponsoring the project. You know, donating money to it specifically so that, you know, all of the maintainers on the project could focus on it full-time. And by doing so, the project grew faster, it became more reliable, bug fixes, all of that that ended up helping us in return. We didn't have to hire someone to do it ourselves because we could, like, you know, enable the project to do it for us. It was a great symbiotic relationship between the two. I think all companies, at least if there's, like, open source was a really core part of what you do, if there's especially one or two projects that are at the heart of what you do, you know, think about how you can contribute. With the Node.js project, for example, companies can become members of the OpenJS Foundation, which oversees the project.