Topics

Featured in Development

Peter Alvaro talks about the reasons one should engage in language design and why many of us would (or should) do something so perverse as to design a language that no one will ever use. He shares some of the extreme and sometimes obnoxious opinions that guided his design process.

Featured in AI, ML & Data Engineering

Today on The InfoQ Podcast, Wes talks with Katharine Jarmul about privacy and fairness in machine learning algorithms. Jarul discusses what’s meant by Ethical Machine Learning and some things to consider when working towards achieving fairness. Jarmul is the co-founder at KIProtect a machine learning security and privacy firm based in Germany and is one of the three keynote speakers at QCon.ai.

Featured in Culture & Methods

Organizations struggle to scale their agility. While every organization is different, common patterns explain the major challenges that most organizations face: organizational design, trying to copy others, “one-size-fits-all” scaling, scaling in siloes, and neglecting engineering practices. This article explains why, what to do about it, and how the three leading scaling frameworks compare.

Open Source Benefits to Innovation and Organizational Agility

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.

Re: Only benefits?

Your message is awaiting moderation. Thank you for participating in the discussion.

Hi Javier, Thank you so much for this great feedback! You are absolutely right, I haven't mentioned any of the many risks that need to be monitored when we deploy an enterprise-wide open source strategy. I alluded to few of them in a previous news, www.infoq.com/news/2019/01/capital-one-banks-in... common risks associated with using open source are security, trade secret disclosure, devaluation of patent portfolio, M&A devaluation, intellectual property infringement, etc. The key development risks were touching on security, licensing and reputation.For the truck factor, it has been discussed in open source networks but I don't think it's only applicable to Open SOurce. A paper on risks, and even better, a paper on OS failure case studies would be exciting to do. Thanks!