A decade ago, I researched and gave a talk called Would you do it again for free? If you worked on an open source software project for free, and a company started paying you to work on it, if they stopped paying you, would you stop working on it? At the time it was a valid question as many of my friends were starting to get paid positions doing their dream job. In case you are curious, the answer is “it depends”. Most people will stop working on that particular project but most will go on to work on other open source software projects. You can watch versions of the talks and see links to the research studies I found.
My new question is how have c0mpanies influenced open source software over the past decade? They’ve influenced open source software in many ways from career opportunities to support to licensing to barriers to entry. Let’s take a look at 8 ways companies have changed open source software.
They have provided paid positions and enabled people to pursue their passions for 40+ hours/week. While most open source software advocates believe that full time jobs working on open source software is awesome, many also worry that company’s priorities now greatly influence projects through the maintainers they pay.
Making it possible for open community participation to be part of a job, rather than necessarily being a personal lifestyle choice — Nick Coghlan @ncoghlan_dev
It’s worth noting that, in addition to salaries, companies also provide much better research into what paying users want as well as roles such as UX and product marketing — they provide a complete software ecosystem as we discuss below.
While many open source software developers make a living working on open source software, most projects could still use many additional paid staff. Nadia Eghbal in her research funded by the Ford Foundation argues that we do not pay enough of the open source software maintainers.
Barrier to entry
Companies have changed the barriers to entry. In some cases it’s harder — for example, committers, especially product owners, are expected to work full time on projects.
an increase in # of new open source devs with no community experience, an acceptance of a high bar to get started… — Dave Neary @nearyd
Without a paid position, it is hard to keep up with expectations and grow and support a community. In other cases, companies have made it easier for a more diverse group of people to join open source software projects by hiring people unfamiliar with the project and giving them time and training to get started.
When companies hire people to work on open source software, they often hire from the greater pool of software developers and provide training and support for them. While the worldwide pool of software developers is not representative of our world’s diverse population, this paid training and assignment has increased the diversity of open source software projects. Anecdotally, I know many woman who were first introduced to open source software through a paid position.
Companies bring new working styles to the projects that they get involved with. Some of these styles are probably more positively accepted than others. For example, when companies become involved with open source software projects, meetings and phone conferences become more prevalent. Conferences transition from weekends to work weeks.
Conferences happen midweek instead of on weekends, the assumption that leaders have 40h to spend on project… — Dave Neary @nearyd
I also believe companies introduced concepts like agile, pair programming and six week training “dojos” such as the ones Cloud Foundry has. In order to become a committer, a Cloud Foundry contributor attends a 6 week dojo in person where they are partnered with experienced committers. Cloud Foundry does all of its coding in pairs. Work is assigned to pairs by a project manager.
Companies have shifted the predominate licensing methods from copyleft to more permissive licensing. And while they’ve cleaned up much of the copyright assignments, they’ve also often introduced controversial committer licensing agreements, CLA’s.
it has widened the governance models, with mixed results, CAs held by corporations is a controversial development — Alberto Ruiz @acruiz
Complete software ecosystem
Companies have brought new knowledge and skill sets to open source software such as UX designers, product managers, market research and product marketing. Open source software on its own has not attracted many volunteer into these roles.
Loss of a unifying enemy
Much of the energy behind some of the early open source software projects seemed to center around an anti-corporate sentiment and in particular, an anti-Microsoft sentiment.
Loss of sw corporations as a enemies of freedom has led to loss of cohesiveness as a group. — Alberto Ruiz @acruiz
As more open source software contributors receive paychecks from these corporations, and as more corporations support open source software, this anti-corporate sentiment is fading.
As Nadia Eghbal describes in her research for the Ford Foundation, many open source software projects are not able to provide support for their projects. Often well established projects are maintained by a few individuals who are not full time on the project. Heartbleed is one of the most famous, recent examples of how this can be an issue. Heartbleed was a bug discovered in the OpenSSL project. A project used by most of the world and at that time supported by one paid staff member. The Linux Foundation stepped in and raised money from companies and used their existing infrastructure to provide support to four paid committers.
Support for open source software projects varies from, a company paying the salary of a maintainer or two to a non-profit organization dedicated to the project to non-profit organization that collect funding from multiple sources to support multiple projects.
For better or worse, I would say community vs. commercial versions. Also paid support as desired by corp/govt users. — Tony Wasserman @twasserman
Open source software has become a predominate software methodology and companies have become more and more involved in open source software projects. They have supported and changed the way those projects work. They provide salaries to committers, support to users, change software methodology styles, complete the ecosystem with market research and UX designers, change barriers to entry and increase diversity.
How else have you seen companies influencing open source software projects?
Originally published on Medium.