img 20171004 101320667
October 4th, 2017

Liveblog: the many facets of sustaining an open source ecosystem

Tom Boutell
Chief Software Architect

JS Foundation Panel: The Many Facets of Sustaining an Open Source Ecosystem- Jory Burson, Bocoup (Moderator); Maggie Pint, Microsoft; Tracy Hinds, Node.js; Erin McKean, IBM

This is a liveblog. Refresh away. Quoting and keeping up as accurately as I can. Bear with me. — Tom

"Nobody goes into open source software because they really want to do accounting."

"Tracy, how are you seeing money make a difference on the community side?"

"It's something we have to think about. Is the money going to create more sustainable community events? The thing I appreciate most about being able to have a budget is being able to figure out how events bring people together. Being able to go to the collaboration summit, other events that are relevant and powerful... it's a big challenge [to ensure the money is spent well]."

Jory: with more companies seeing the value of open source, how is that changing the landscape of contributors?

Erin: part of the draw of joining IBM was being able to work on LoopBack (open source project) and the OpenAPI initiative. Open source is good for recruitment and a sense of work-life balance and motivation.

Maggie: at Microsoft... [I've been] educating our engineers on open source development methodology. Node is an amazing project where so many people can have an opinion. How do we apply those methodologies in our internal engineering teams? [How do we] embrace the open source mentality? Rather than just throwing tickets in the backlog, how do we get them in and contributing?

Jory: beyond money, what can companies do to really support [open source] that they are getting so much from?

Tracy: provide time. Make sure they are encouraged to do that at work and not guilted into pushing it into their spare time, make sure it's part of their day job, not "110%" and that others understand the value of that.

Erin: again... "open source Friday" across the board. Not just developers but open source contributions to marketing, technical writing. Work-life balance.

Maggie: say it: you have permission to contribute to open source! Many people who had never locked into the idea that they were allowed to contribute will participate. If you're using Jenkins, even if you're just writing Powertools scripts you can contribute. People don't think it's for them [without that encouragement]. I didn't think it was for me. Used to work for a neat little HR company, didn't feel cool enough to contribute to open source. Then someone who recognized her work in the times-and-dates space encouraged her to contribute to momentjs.

Jory: being asked to contribute is powerful. Do you have stories about being asked?

Tracy: I definitely do from the community side. JavaScript engineer by day, conference organizer by night!

Jory: not just developers we need to support as contributors, but project management, etc. In additon to code, what else do we need?

Erin: sticker design! Very important! Top of the list!

Tracy: in Node.js we are identifying all the parts of the ecosystem that need a voice. Education, outreach. Not a lot of code [in this particular piece], more project management contributions. These types of roles are essential and the folks needed aren't accustomed to being in this space.

Jory: and they need permission.

We've heard a lot today about diversity in open source and bringing in other kinds of support is an opportunity to do that. Thoughts?

Erin: we hear a lot about diversity and inclusion and inclusion gets short shrift. If you bring in 1,000 people and 999 leave because they don't feel their contributions are welcome that's a waste of everybody's time and it sends the message that all open source projects are as bad. More mentoring — feedback and guidance — pull requests — guidance through the unwritten norms of a community, pushes to make those norms more inclusive where they aren't. More contextual information, less expectation that folks will figure it out on their own. It's not really kind [not to give that guidance], and open source should be joyful. Taking that away is ther worst thing we can do.

Maggie: at TC39 (Maggie is one of the first women to ever present at TC39, where JavaScript itself is standardized) inclusion has been a slow process. It was a long fight to get a code of conduct process started [which appears to still be a work in progress]. Diversity in TC39 has improved but is still lacking on some axes, like race. Pick up the torch, make it happen.

Tracy: why do we need diversity, why do we need inclusion? If we're missing the people in the room and the seeds that are supposed to give us the comprehensive perspective to build good software and products, then fix it. But first people need to feel they can speak in that room.

Maggie: I do want to mention that my primary diversity role at TC39 is being an enterprise developer, not a programming language designer.

Tracy (i think): and we know that JavaScript developers are capable of change, because look at how often we switch frameorks! [Applause]

Jory: the burden often falls back on the maintainers of projects. What can we do to support maintainers?

Erin: yell at them less. When you ask a maintainer for something, go back and reread it and add a lot of pleases and thank-yous. You've written one terse request but the maintainer [of an open source projects] sees hundreds. 

Tracy: just wanted to thank Ryan Dahl for Node. Found out he's shy; people go up to him and try to cuss him out for Node! They go up to him and demand a thousand fixes. Figure out how to roll that back, be thankful to maintainers who have done so much for you.

[I like to open github issues that say "problem: you have not yet been thanked" and thank the maintainer in a comment. They always get a kick out of it. -Tom]

Maggie: the likelihood that I see someone happy on the Internet is very very low. In person people can be rude but mostly they are much more negative online. People are hearing them. [Maintainers and supporters] are not faceless, they are hearing these complaints. 

Erin: you get more merged pull requests with honey than with vinegar.

Maggie: we don't mind criticism. Yes the library is too big. Yes it should be immutable. Yes it should be properly modularized. It's just that the constant [harshness] gets rough.

Jory: you get caught in the middle. You're the open source middle management.

Maggie: we have an immutable branch of the module. We need to figure out how to release it, how to rewrite the documentation, how to do an alpha release. It's hard to reach critical mass [on all the non-coding tasks involved]. If you're in marketing or project management you can really help.

Jory: giving you permission. So much permission. All the permission.

Tracy: communication is so important and that helps manage expectations. 

 

Tom Boutell
Chief Software Architect