GitHub last month reported that the number of government employees using the code sharing platform had tripled in the past year, to reach more than 10,000 users from 500 organizations. The accompanying graph (re-published here with permission) shows a steep adoption curve that perfectly illustrates a larger trend toward government use of open source practices and workflows over the past five years.
That same steep curve could be used to describe what's happening now in the enterprise as well, says Brian Doll, vice president of strategy at GitHub. Though it's more difficult to pull data on enterprise users – the .gov email address is a dead giveaway for government employees – experience suggests large companies are increasingly using GitHub, he said.
This trend is, in part, driven by increasing enterprise use of open source software. More than 50 percent of all enterprises contribute to and use open source software, according to Black Duck Software's Future of Open Source Survey, released in April.
“The distinction between open source software and enterprise software is blurring,” Doll said.
But this shift toward open source workflows is happening even when the source code itself is not open, a practice called “inner sourcing.” Companies are adopting for their own internal development the culture, tools and practices that have long benefitted successful open source projects such as Linux.
“Large companies are specifically coming to us because they're buying into that culture of faster release cycles, working together, and having people work across boundaries,” Doll said.
Open Source for the Enterprise
Just as in open source projects, inner sourcing opens the code to everyone in the company, and anyone can contribute back to it or fork it as needed, says Camille Fournier, chief technology officer at Rent the Runway, a startup that has embraced this new style of corporate software development. Facebook, Netflix, Samsung, and Walmart Labs are a few other notable companies that use open source practices for internal development.
“Ideally, they have a team responsible for their stewardship, making sure code submissions get reviewed and applied,” she said. “They have mailing lists and ticketing systems that are fully open to anyone at the company for discussing changes, asking questions, etc.”
“Open source methods, when you apply them well, force you to document and formalize your process which can be a very good thing,” Fournier said.
While GitHub has become the de facto platform for companies to host their external open source projects they're now installing the platform on-premise for internal use as well, along with other toolchains and cloud services commonly used in open source development.
Companies are adopting inner sourcing for the same reasons that they use open source software in their own products. They report reduced costs, faster development cycles, and attracting talent that can help increase innovation and create a competitive advantage.
“Sharing internally is really helping companies deliver the kind of software that's essential to them,” Doll said.
Making the Switch
Companies looking to migrate to an open source development model often start with a greenfield project or a small test group of developers, then gradually roll it out to a larger group, Doll said. That's because inner sourcing isn't just a matter of adopting the right tools, but also of setting up an environment that breaks down silos between projects and encourages openness.
This new culture, in turn, has many benefits, Fournier said. It encourages knowledge sharing, rewards developers for work that benefits multiple teams and projects, and builds community.
“I believe that this has a lot of power to improve employee retention,” she said.
If not managed properly, however, and tried-and-true open source best practices are ignored, making the switch can be painful, she said.
“Sometimes code that is owned by everyone is owned by no one, and not everyone wants to jump in and fix a bug in a system they don't know even when the process enables it,” Fournier said. “So you need to constantly reinforce the open source nature of the work.”
To help mitigate the risk and ease the transition, many companies seek advice on open source practices through membership or training with nonprofit organizations such as The Linux Foundation or consulting services from companies such as GitHub, Red Hat and Black Duck Software.
Doll agrees that sometimes it can be a struggle to shift the culture and encourage developers to actually use the new system. But in the end, it's worth it.
“It's just the best way to develop software right now.”