This is the fourth of a series of five studies exploring the sustainability of open source software communities in the public sector.
Developers Italia is the name of both a community of Italian software developers and the central open source software platform designed for the delivery of public services in Italy. Developers Italia is a vibrant community made up of citizens, civil servants, public administrations, and enterprises. Community members have the opportunity to meet on the platform and discuss ongoing or future projects, share ideas, and upload source code.
Developers Italia was launched by the Digital Transformation Team and Agency for Digital Italy (AgID) in 2017. The community initially received government funding to cover the costs of building the platform and the various tools (such as communication channels and portals), running events, creating calls for tender to develop open source software, and launching initial projects. Over time, the funding allocated to some projects has decreased due to the abundance of volunteer developers, thus reducing the need to create paid government positions. More than 260 software solutions developed by the community are hosted and further developed by volunteer community members on GitHub. Then, the solutions are uploaded to an online catalogue maintained by governmental bodies.
One of the key factors behind the community’s sustainability is recognising members’ contribution, with each member having the potential to become a project leader. This governance structure empowers community members, in turn contributing to the community’s sustainable growth.
To learn more about Developers Italia’s sustainability, OSOR spoke to the community’s OSS Project Leader, Leonardo Favario.
COMMUNITY AT A GLANCE
|Brief description||Open source code and community of developers working with the Italian government|
|Starting date of the project||2017|
|User community||4680 users in the Slack Channel and 6493 users in the Forum|
|Developer community||131 software maintainers invited on the Developers Italia GitHub|
Developer’s Italia Software CatalogueGitHub Repository
|Funding||The initial funding of Developers Italia was part of the governmental budget dedicated to the Digital Transformation Team|
Developers Italia is a vibrant community that originated within the Italian government. It was established in response to an ongoing issue that the government was attempting to tackle: public administrations were increasingly carrying out their work in small silos and closed communities rather than striving to foster collaboration on projects that were of mutual interest. According to Leonardo Favario, there were four aims that guided the creation of Developers Italia:
- Source code: creation of a catalogue where the source code of Italian digital services can be easily indexed, reviewed, and maintained. When source code is easy to find, sustainable communities are more likely to build around it.
- Documentation: creation of a centralised open source platform where legal and technical documentation is stored, publicly available, and easy to understand.
- Discussion: establishment of a forum for both synchronised (live chats) and unsynchronised (forum) conversations.
- Testing and validation: provision of a software testing space for experimentation. The Developers Italia platform contains a selection of APIs and tools that allow developers to test their applications.
The community is continuously growing and developing. Nowadays, Developers Italia is no longer simply focused on maintaining source code. Rather, the community now works to enhance the delivery of digital public services in Italy. For example, the community shares technical and administrative documents that citizens can comment on, organises public events such as hackathons and community engagement activities, and calls upon citizens to collaborate on coding, sharing software, and reporting new APIs. The GitHub repository currently contains 264 free and open source software repositories (as of April 2020).
In 2017, the then-called Digital Transformation Team, together with the Agency for Digital Italy, joined forces to establish the Developers Italia community.
The Digital Transformation Team launched several initiatives to place the community on the radar of Italian developers. Firstly, they launched a public tender inviting developers to contribute to some core public services that would be integrated with the community, such as electronic identification and the population registry. The time constraints were quite tight to provide these public services: by launching a tender, the Digital Transformation Team could guarantee the developers’ full-time commitment to this particular phase rather than relying on voluntary contributions. Secondly, the community organised a successful and widely attended international hackathon in October 2017 to brainstorm the innovative delivery of public services. The Developers Italia’s operations were kicked off successfully in part because it is a government-led initiative enjoying sufficient funding and investment.
The community grew in stature in 2019 when the legal Guidelines for Code Acquisition and Reuse of Software aimed at public administration were adopted. These Guidelines mandate that all software developed or owned by Italian public administrations must be released with an OSI compliant licence and made available in a public repository. Most importantly, the Guidelines contributed to the community’s success as the “reuse catalogue” hosted on Developers Italia became the main place for developing and sharing code for the delivery of public services. This gave the community recognition and a legal standing. Due to its decentralised structure, the catalogue collects and displays information on all the source code hosted by the different Italian public administrations, independently of where it is hosted. At present, source code is hosted on GitHub. The catalogue currently contains 93 solutions (as of April 2020). Given that the use of the catalogue is a legal obligation, it is actively maintained and monitored by governmental bodies.
When the mandate of the Digital Transformation Team ceased at the end of 2019, Developers Italia was incorporated into the Department of Digital Transformation within the Ministry for Innovation and Technology.
According to Leonardo, Developers Italia can be deemed as being a sustainable and healthy open source software community on account of the following four factors:
- Governance: A community is functioning optimally when its members are empowered and allowed to continuously take on further responsibilities. It is also important for community members to have defined roles. In the case of Developers Italia, dedicated community managers (community developers) can see when members are inactive and provide them with new discussion points or topics to explore further. Generally, members are entrusted with more responsibilities over time; therefore, communication and engagement tend to increase naturally without nudges from community managers.
- Community vibrancy: A community is sustainable when its members act upon queries, carry out updates, and notice bugs without being called upon to do so. Many volunteers quickly develop into active and crucial community members over time. The Developers Italia team also highlighted the importance of events and physical gatherings to boost motivation and increase the sense of community belonging. Despite being sometimes costly, it is necessary to bring community members together and increase their visibility to the wider public.
- Technological maturity: Codes put forward by the community are well-tested and of a high quality supplemented with documentation. There is a common recognition in the community that code is only valuable once it has been well-documented and written out. In addition, if members are entrusted with increased leadership capabilities, it often leads to higher quality code.
- Public sector adoption incentives: Developers Italia is a community that was created by the public sector for the public sector. However, the way an open source software community works is different to the methods of public administrations. Developers Italia has shown that, despite public sector hierarchical structures, it is possible to have a non-hierarchical and vibrant open source software community in the public sector. The community overcame this challenge by introducing the public sector to the digital realm where, together, the two partners figured out how to engage with each other. The public sector and the community also collaborate with regional and local administrations. The community tries to promote new ways of working and cooperating by using common platforms, which are easy to grasp, efficient and transparent for the citizens.
Despite Developers Italia being a sustainable community, Leonardo stressed that its growth did not occur in a linear fashion.
The community encountered certain challenges when introducing the world of open source software to the Italian public sector. The latter did not have a thorough understanding of open source software and how open source software communities work. The community therefore dedicated resources to educating the public sector and raising awareness about how they operate. The community also convinced some public officials to get involved and learn for themselves how the community operates and how tasks are shared among members.
In light of this, Leonardo stressed that agility from both the community and the public sector itself were necessary to achieve sustainability. The community has to be able to re-define itself and adapt to the needs of the public sector when necessary. Projects originate based on the needs of the public sector and the additional unforeseen input that a project may demand often means that other ongoing projects need to be put on hold. A community also has to find an organic way to balance different needs, without jeopardising the motivation of its members.
Within the community, it is also important to implement an appropriate leadership style. In the case of Developers Italia, the leadership structure is decentralised, with every active contributor having the potential to become a manager. It is important to create an environment where community contributors are encouraged to continue creating code because they can bring valuable knowledge and expertise to the table.
According to Developers Italia, an open source software community looking to develop a public sector project similar to that of Developers Italia should thus focus on the four following points:
- Agility: it is important to be able to re-define priorities.
- Code: quality over quantity.
- Governance: the right style of leadership is important.
- Mission: build a strong and clear objective recognised by all members.
Initially, Developers Italia was a project of the Digital Transformation Team that started with an investment of money, time, and resources. Today, a large number of projects are maintained and curated by volunteer community members. Therefore, the community continuously grows and prospers.
For information regarding the policy context of the use of open source software in the public sector in Italy, please consult the respective Country Intelligence Report and its corresponding factsheet. You will find a detailed overview of the political actors, strategic players, political and legislative initiatives, and general public sector open source software initiatives in Italy.