The IBM open source way

At IBM, open source is much more than just a license, it’s part of our culture. We’ve done open source since the beginning and we’re sharing our knowledge with you!

Explore our proven methods for open source success. Reap the benefits, avoid the pitfalls, and learn how to do open source the right way.

Open source at scale

IBM does open source at scale. Our open source management process balances development and compliance, and is the result of our experience since the beginning- when the definition of open source was formalized nearly 20 years ago. We’re sharing what we know with you to help you successfully embrace open source development.

  • IBM is unmatched in building enterprise technology, and our open source efforts and investments reflect that fact. When we engage in a project, we focus on those aspects that matter most to the enterprise, which are the things we know how to do well:

    • Interoperability
    • Portability
    • Security
    • Scalability
    • Accessibility
  • IBM invests in communities and helps shape programs that can deliver characteristics that matter to our clients and partners. We value open governance because it ensures the long-term success and viability of those projects that form the foundation of our enterprise offerings and solutions.

    For example, IBM donated 44,000 lines of code to the Linux Foundation’s Hyperledger Project while providing new blockchain-as-a-service offerings on the IBM Cloud. IBM worked with other industry leaders in the Hyperledger Project because we recognize the long-term value of open collaboration and a cross-industry open standard for distributed ledgers.

    We’re also investing in more and more open source from within IBM development and research labs; you’ll find all kinds of innovative open source projects within our IBM Code initiative.

  • We drive interoperability, portability, and other features that matter most to the enterprise. We also focus on contributing IBM innovation upstream rather than maintaining closed source when it pertains to strategic projects such as Hyperledger. There is IBM value-add in our offerings, but we don’t invest in interoperability and portability only to ignore these attributes when we deliver our own offerings based on those open technologies. Our strategy is based on leveraging a solid foundation of open technology and ensuring that the interfaces (APIs and SPIs) defined by these technologies are fully exposed and not hidden or inaccessible behind a proprietary veneer of value-add.

    We strive to not fork the community code by creating an “IBM Hyperledger” or “IBM Cloud Foundry.” The Cloud Foundry that we integrate into IBM Cloud is the same code that is released by the Cloud Foundry Foundation, and the same that is used by HPE, Pivotal, and SAP. Similarly, the Docker included in IBM Container Service is the same Docker that that community releases.

    We invest in the community code for these strategic technologies. We work to ensure that fixes and new features are up-streamed rather than adding extra complexity and effort on IBM’s part to maintain an independent, differentiating version. Where we desire to add extensibility that can leverage IBM (or others’) particular capabilities, we work within the community to create the necessary API or SPI. We also invest in making sure that those extension points are not abused to create a potential for lock-in.

  • We focus our open source efforts around six core elements that together make up the “IBM open source way”:

    • Training Training enables a common starting point across the organization for understanding process and encouraging participation in open source.
    • Recognition A recognition program rewards those who participate in open source and also connects potential open source mentors to those who are new to open source.
    • Tooling It is difficult if not impossible to scale a manual process. Tooling and automation is key.
    • Organization Our central Open Source Core Team includes experts available to answer questions and advise teams on consuming and contributing to open source.
    • Consuming We have a formal process around consuming open source, tailored to use just enough process for the situation.
    • Contributing We don’t require a formal approval for most contributions.

    Dive in to each element and discover how you and do open source right.

It starts with training

All IBM employees must take our annual training before working with open source either on company or personal time. This training, which is tied to our Business Conduct Guidelines, ensures everyone starts off with a solid understanding of open source and its benefits and risks.

Because we are constantly refining our open source process, IBMers must complete the training annually for as long as they are actively engaged in development or services activities involving open source. Over 62,000 IBMers complete this training every year.

What are the essential elements of open source training?

Elements of our open source training include:

  • Definition of open source It’s important everyone working with open source in the organization understands what it is and also what it is not. For example, other types of third party software such as freeware are often confused with open source.
  • Benefits of open source From driving emerging technologies and leveraging open standards to contributing to projects to add qualities important to your customers, our training covers common benefits.
  • Potential risks Open source does come with risk- our training includes common risks associated with open source, and our approval process is designed to uncover and reduce potential risks early in the development cycle.
  • Open source licenses It’s critical everyone understands permissions granted by licenses, license obligations, and how to properly handle open source packages according to the license to ensure our intellectual property is protected and terms of the license are honored. This protects our reputation as good open source community citizens.
  • Ways of working with open source Training includes our policy on working with open source on personal time, consuming open source internally, consuming open source in products and services, handling open source from a vendor or client, and contributing to open source.
  • Open source and corporate strategy We explain why open source is key to our corporate strategy, and why it’s important for all our developers to consume and contribute to open source.
  • Open source management process We explain the steps, tools, and stakeholders involved in our process.
  • Tracking and metrics Participation in our training program is tracked, and annual training certification is a prerequisite to submit open source requests. Training is tied to our Business Conduct Guidelines, so it is not optional.
  • Feedback Both our process and our training material is revised regularly as we get feedback on what is working well and what we can do better.