Understanding the open source software life cycle

Every open source project evolves differently. And only some community projects become Red Hat® products. Learn how Red Hat participates in the open source life cycle, creating customer value every step of the way

Open source community development process

Red Hat

1. An individual, group, or enterprise creates software that solves a problem.

We participate

Red Hat creates, catalyzes, and participates in community-powered upstream projects. We contribute code, collaborate on content, help maintain projects, provide critical infrastructure, mentor leaders, consult on licensing decisions, and sponsor events aimed at raising awareness of community-driven projects. In open source communities, we advocate for technological innovations that will benefit our customers.

2. These creators decide they would like to invite other people to collaborate on improving that software—including people who are not part of their team or organization. They make the source code for their software accessible, and they attach an open source license that specifies the rules for modifying and sharing it with others.
3. Other people access and use the software. Some adapt it for their own purposes. They share these modifications with the software’s creators, who determine whether to incorporate the modifications into the original software codebase.

We integrate

Red Hat integrates multiple upstream projects into open source community platforms on which others can build, ensuring individual component technologies integrate effectively into complete solutions. We validate and test these platforms in conjunction with third-party software, ensuring ease of installation and management across multiple projects. We also work in multi-organizational initiatives, integrating industry-recognized standard technologies into our own projects.

4. More collaborators join the effort to improve the software. The group develops its own infrastructure of participation (communication channels, technical platforms, and governance models) so even more contributors can join their work. The software becomes a community project.
5. The software matures. It works reliably enough that people begin depending on it. Even people who are not programmers start using it.

We stabilize

Red Hat stabilizes software platforms by refining them to meet enterprise specifications. We certify software to run on common industry hardware and help customers keep the software updated for specified durations. We offer training and certifications on the software platforms, and we consult with customers seeking to understand how open source platforms can impact their businesses.

6. The software becomes more popular. People using the software rely on the project community for help maintaining it and supporting their use of it.
7. The community releases new versions of the software when they are ready for general consumption. These new versions incorporate feedback and modifications from users and programmers.

We maintain

Red Hat maintains open source software platforms by providing technical support for customers. We help customers configure their software to provide additional, ongoing business insights. We provide patches for zero-day security exploits in coordination with community projects. And we contribute our modifications back to the upstream projects of which we are a part, propelling the open source life cycle forward.

8. The software matures to the point at which maintainers seek a more sustainable financial model for supporting it. The software becomes the basis of new developments and innovations.