Open source has been around for decades, most often applied to software, but also to hardware, food recipes, houses, cars — anywhere blueprints or plans can be equated to source code.
As a software development model, open source allows users to access the software’s source code, modify it to suit their needs, even redistribute it. Software that is made available as open source comes with a license which defines exactly what permissions and obligations a user has, should they want to redistribute that software as is or modify it before sharing. Open-source software can be collaboratively developed by a community, or by a single vendor who completely drives the product agenda.
In an open source community, members fix bugs and add features as needed. By modifying the software to fit their needs, open-source communities are able to deliver high-quality, user-centric innovation much faster than proprietary software can. And because these communities can be more distributed and diverse than development studios or in-house teams, the modifications to the software tend to be more inclusive, addressing the specific needs of users from different backgrounds and geographies.
The way open-source communities operate naturally leads to efficient, resilient teamwork that delivers high-quality products in a sustainable manner.
What makes open-source resilient & sustainable
The distributed, user-driven approach of open source community projects can have a significant impact on project resilience, which the ISO 22361 standard defines as the ability of an organization to absorb and adapt in a changing environment. In 2018, the HAL-Inria team published a paper on this subject in which they shared their Open Source Software Resilience Framework (OSSRF), designed to measure the resilience of an open-source project across various quantitative parameters:
- Funding model — If/how the project receives funding for some or all of its activities
- Complete documentation — Can be available in localized versions, often through community efforts (e.g. LibreOffice’s localization team is made up of people in multiple countries around the world, resulting in a software that is available in more than 110 languages)
- Open source license
- Project dynamics, growth, and developer activity
The quantitative parameters are really interesting because they can be measured from the outside, by observing the project. This means that even if you are not a member/participant of a project, but just a potential user, you can observe the project and decide if it meets your needs.
Sustainability is a natural biproduct of the way open-source teams work and is closely linked to resilience as each depends on the other to be achieved. Open-source contributors, the people who actually write code/documentation or participate in the open-source community, do this because they have an interest in it. They use the software and want to make it better by fixing or adding things to get the exact experience the need.
The energy spent by the development community is directly driven by the members’ interest in enhancing the software and the return they expect on those enhancements. As long as there is interest, the energy to drive the project will be optimized for just the amount of work needed only when it is needed. Compare this to proprietary software, or even purely commercial open source models in which software is constantly being worked and new features are being added — features which may or may not be useful for the end-user. This non-stop development can be hard to sustain without increasing prices to fund it.
Further proof that open source aligns with sustainability goals is that some very visible projects such as the Green Software Foundation run their activities directly as open-source projects, for their produced code as well as for their documentation and code, and host it on a public repository for all to contribute.
When designing a software project for the long term, it’s important to consider developing in an open-source model to allow the project team (vendor or community) to benefit from all of the natural and structured elements that will support and strengthen its sustainability and resilience.