Why Open Source?
Open-source software is collaborative, based on community building and is about inviting others to contribute, either by sharing their feedback and ideas or development workforce.
As is known, the main principles of open-source software are collective production, collective collaboration and a transparent environment. These fundamentals lead to the creation of a highly efficient, agile and sustainable environment not only for the developers but also for the software product itself. Moreover, all interested parties (either they are contributors or external reviewers) are welcome to contribute, so the development environment acts as a magnet to attract people who are inspired of the idea and determined to provide some input to improve the end product.
People join open-source software communities for a variety of reasons. Most of the communities consist of professionals, volunteers, opportunity-seekers, people undertaking a similar challenge, developers who want to sharpen their skills, experimenters looking for a sense of identity and affiliation, or simply the ones who join with a sole purpose of socializing.
On the other hand, organizations increasingly rely on open source as majority of the world’s most innovative applications are open source and they want to be part of it. Their involvement with the communities gives them a chance to influence (and take part in) the development of the features of these software.
This collaborative environment fits perfectly with the mission and structure of IDSA and collaborative implementation of IDS concept will only and naturally bring greater success to the IDS community.
What are the benefits of Open Source for IDSA?
Implementations of IDS ecosystem are collaborative by their nature, as the outcomes need to be validated by stakeholders from various industries, before becoming success stories. This open environment will not only accelerate this validation process, but also will help implementation of IDS components reach the highest level of quality, through collaboration.
Technical components of IDS (base services, essential services and frameworks) can only reach the highest level quality via the continuous implementations and reviews from the communities and stakeholders. This brings a need for a peer review throughout the entire development life-cycle. This helps to ensure that others (outside of the development teams) can be aware of the changes, and can
provide feedback before the implementation is complete. When other members of the repository find a chance to review the code, provide feedback and report bugs, the quality and functionality of the end product will be improved. Most importantly, this structure will attract a larger community where everyone learns about the experiment results and this will provide a feedback of great importance (which will improve the governance) for the IDSA Head Office.
How to See and Contribute to the Existing Implementations?
The implementations of IDS technical components (base services, essential services and frameworks) are openly available on IDS Github repositories (https://github.com/International-Data-Spaces-Association). All these implementations are provided by their respective community members and improvements are being made on a regular basis.
The common point for all these repositories is that they are all open for contributions and contributors. Anybody who is interested in expressing their ideas and/or would like to be part of IDS developers community, are welcome to join and contribute. At the current stage, all active repositories have their licenses, readme files, set of labels for issues as part of their contribution guidelines.
Turning projects into communities and users into contributors
IDSA will focus on accelerating adoption momentum which will result in converting its community members (users) into contributors by ensuring their active participation in the project roadmap and promotion. To reach this goal, a model is being prepared, that includes processes to ensure the seamless integration of the code in an asynchronous way and that also facilitates the documentation and communication processes.
As shown on the figure above, the OS development model provides an integrated interaction and communication between the user community and developer community. In this model, feature requests may begin with any means of communication including a request, an email, by creating an issue on a repository, etc. This request notifies the others of the need about what needs to be done and start a discussion to come to a consensus on next steps.
This request is evaluated by project contributors and maintainers and a decision is made on it, if it needs to be part of any future release. This process may also lead to discussion among the community until the majority is convinced that there is a need for the implementation of this feature. Discussions, testing, and iterative development play an important role in all steps of the entire life cycle.
This open-source structure is expected to bring a better project and community governance structure for IDSA, a healthier and more meritocratic community structure that will also lead to a culture of collaboration among members and all interested parties within IDS ecosystem.