Open Source @ IBM
IBM open source at a glance
At IBM, we take open source seriously. We train our employees in the best practices for engaging in open source communities and the importance of open governance, and we empower them to create open source projects that solve their business and personal problems.
We’ve learned a few things over the past three decades of contributing to open source, and we’re passionate about helping other enterprises create, adopt, and scale open source in their own companies. When becoming an open enterprise, you need to consider scale, open governance, and culture.
Think about scale
When creating or investing in open source projects, you need to consider how you scale those projects within your enterprise. When we engage in a project, we focus on those aspects that matter most to the enterprise, which are:
Push for open governance
Open governance ensures the long-term success and viability of open projects. We engage in communities that embrace open governance, donating our code for the benefit of the community while also using the resulting code in our own products.
Create a culture of open
At IBM, we have 6 core elements in our open source program to help us achieve this culture of open. Consider using or adapting these elements to build your own open enterprise.
- Training: Standard training ensures all developers and open source participants have the same knowledge about the open source process and are empowered to participate in the process.
- 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: We have a central open source team that includes experts who can answer questions and advise internal 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 can do open source right.
Start with training
Before working with open source—either on company or personal time, employees must take our annual training. This training ensures everyone has 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 other activities involving open source. Over 60,000 IBMers complete this training every year.
Essential elements of open source training
Some of the key elements we cover in our training include:
- Definition of open source: Any employee working with open source needs to understand what it is and also what it is not. Once a clear definition is established, it’s easier to talk about how to use it effectively.
- Benefits of open source: We highlight the benefits of open source to encourage employees to contribute.
- Potential risks: Our training talks about the common risks associated with open source. We want employees to be able to spot the risks, but our approval process is also in place to uncover and reduce the 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. This understanding ensures our intellectual property is protected, that terms of the license are honored, which all helps to protect 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: Understanding what role open source plays in our corporate strategy provides context to help developers understand how their open source contributions benefit our entire company.
- Open source management process We explain the steps, tools, and stakeholders involved in our process.
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.
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.