Capital One hosted their 3rd Agile Conference in December 2018 in Virginia. Among the guest speakers, Andrew Aitken, global open source strategy leader at Wipro, presented the state of open source and how it is becoming an industry-wide organizational keystone strategy in driving innovation and in retaining top talent.
Open Source Generations
To understand how organizations use open source today, Andrew Aitken presented the state of open source in the context of its evolution from the founders until today. Aitken identified four generations.
Generation one, initiated in the early 70s, is represented by the evangelists and thought leaders who founded the open source movement, Richard Stallman, Linus Torvalds, Eric Raymond, etc. Their purpose was to make software free to allow anybody to contribute to their improvement.
Generation two consists of influencers, such as Marc Fleury, Marten Mickos, and Larry Augustin, who began to think about how to commercialize open source and launched the first few commercial open source companies.
Generation three of open source started with the proliferation of the internet and the vast amount of data that became available to organizations. Dotcoms created new technologies to manage data and started open-sourcing their software. They gathered engaged communities of software developers who supported their technologies and drove these forward: Yahoo, Facebook, Google and Netflix are great examples of open source innovators. They created software that enabled them to create new streaming technologies, allowing communities and companies to innovate around these.
According to Andrew Aitken, we are today in generation four of open source, characterized by large global corporations like Capital One, Lloyds Bank, and Walmart that are impacting the open source ecosystem. These organizations are not only consuming open source in huge quantities, but they are also contributing to open source development, while open sourcing their own projects. One example of this trend is Capital One who open sourced their DevOps dashboard, Hygieia, entirely developed inhouse and leveraging open source technologies. More organizations are following this trend.
Five leading open source benefits
Based on numerous surveys and conversations conducted with experienced clients, analysts, subject matter experts and peers, Aitken identified five leading benefits from adopting company wide open source strategies.
Most companies initiate their open source journey because of the perceived financial benefits, although this is almost never the reason why they keep using and scale open source. The main reason is what Aitken calls secondary innovation: once teams have ingested open source software, they naturally customize it to their needs and organizations by adding new features. These teams’ led customizations contribute to increasing the speed of new ideas and features to market.
The second benefit is teams’ ability to safely experiment and fail fast. When buying proprietary enterprise software, management and teams are pressured to make these products work because of the upfront investment, even if they no longer fit the purpose. With open source, teams feel empowered to download and experiment with various solutions. If they realize that it’s not the right open source for their project, they can experiment with different open source solutions and even consider proprietary software. Open source enables organizations to empower teams and provides teams the ability to fail fast and cheaply.
The third benefit open source offers is a better way of building software. As organizations scale their teams and applications, they can create silos between product teams, which in turn can create equally as many development silos. When organizations strategically pair open source with inner-sourcing programs -- creating internal networks of shared code, transparency, increased collective code ownership and collaboration -- organizations and teams speed knowledge transfer, and produce greater quality code. This in turn leads to more reliable software.
A bank headquartered on the west coast concluded after performing an analysis of their development that only 20 to 25 percent of their code was shared across the organization, and that 50 to 70 percent of their code was redundant, creating duplicate software. They selected six software development teams, created a shared code repository, and developed a process for exposing and sharing those code repositories to different groups within the organization. As an immediate result, their teams doubled the amount of code that was developed and shared, which directly reduced the amount and cost of redundant code.
According to Aitken, the quality of the code increased dramatically because it was exposed to everyone inside the organization. This led to software developers taking more care in the software they were writing. Additionally, with new cross-functional teams contributing to the code base, there were some direct benefits from the product innovation perspective: teams developed new functionalities that they haven’t thought about previously.
The next two benefits relate to talent retention and competency development. 80% of the organizations Aitken talked to shared that one of the key reasons why they got into open source is specifically to attract and retain the best software developer talent. Open source is evolving at a rapid pace, and developers learn new open source technologies every few years. In the competition for the best software development talent, companies now must advertise and show candidates that they are open source shops, and that they contribute to and open source their own software. Additionally, several studies showed that, through open source development and collaboration, developers become proficient faster, reducing the number of defects in their code base.