Skip to content

[Pattern Draft] InnerSource and Collaboration in Public Administrations #804

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 6 commits into
base: main
Choose a base branch
from

Conversation

dicortazar
Copy link
Member

Pattern on the relationship between a public administration and its suppliers in an InnerSource context

Pattern on the relationship between a public administration and its suppliers in an InnerSource context
@spier spier added 1-initial Donuts, Early pattern ideas, ... (Please see our contribution handbook for details) 📖 Type - Content Work Working on contents is the main focus of this issue / PR labels Mar 26, 2025
@spier spier changed the title Create public_administration_and_suppliers Initial pattern [Pattern Draft] InnerSource and Collaboration in Public Administrations Mar 26, 2025
@spier
Copy link
Member

spier commented Mar 26, 2025

@dicortazar thank you for sharing this story of how InnerSource can help in Public Administration.

Some observations from a first read:

The pattern is about a specific "industry" (public administration), which is an approach that we have not used in other patterns so far. How is that industry different from other industries? Do they have challenges that other orgs don't have? Or could we express these challenges in ways that would be applicable to other industries as well.

Currently the pattern is rather broad. Like a "story of how to introduce InnerSource in Public Administration". Our other patterns try to describe one problem, and one solution. i.e. they are more focused on one thing only.

One idea:

  • Could we try to take the solutions that you are proposing, and link them to other patterns that we already have?
  • For the problems/solutions that we cannot find patterns for, we could try to explain the solution in a bit more detail (1-3 paragraphs). If we find those ideas convincing, then we could try to write a dedicated patterns for these.

I will go through your text and try to add links to other existing patterns, to see if that helps.

Happy to explore any other ideas of how we could turn these experiences in the Public Administration domain into patterns.

Copy link
Member

@spier spier left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I left some specific pointers to existing patterns inline.


Key elements of the proposed InnerSource approach include:

* Shared Repositories: Establishing a central repository for code, documentation, and other artifacts.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

* Incentives: Providing incentives to motivate developers to contribute to shared projects.
* Clear Roles and Responsibilities: Defining roles and responsibilities for different stakeholders,
such as project owners, developers, and reviewers.
* Overcoming Legal and Organizational Hurdles: Addressing legal and organizational challenges, such
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Key elements of the proposed InnerSource approach include:

* Shared Repositories: Establishing a central repository for code, documentation, and other artifacts.
* Collaborative Development: Encouraging collaboration between teams and suppliers.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

How do you do that?


* Shared Repositories: Establishing a central repository for code, documentation, and other artifacts.
* Collaborative Development: Encouraging collaboration between teams and suppliers.
* Transparent Processes: Implementing transparent processes for code review, testing, and deployment.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What do you mean by "transparent" in this context?

I think we would benefit form a pattern about doing amazing code reviews. i.e. code reviews that help the contributors as much as possible

However I assume that you have more basic requirements in mind here?

* Shared Repositories: Establishing a central repository for code, documentation, and other artifacts.
* Collaborative Development: Encouraging collaboration between teams and suppliers.
* Transparent Processes: Implementing transparent processes for code review, testing, and deployment.
* Incentives: Providing incentives to motivate developers to contribute to shared projects.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

How do you do that?

Comment on lines +54 to +55
* Clear Roles and Responsibilities: Defining roles and responsibilities for different stakeholders,
such as project owners, developers, and reviewers.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

At least for teams working in "agile ways", roles like product owner and developer are typically rather well defined. Not sure about reviewer.

Why is it that these roles are not defined in the IT of Public Administration?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Product Owner is Agile specific, depending on the process the teams use there are different roles. If you have teams using different processes you end up with different roles.

From an InnerSource perspective: Would the TrustedCommitter Pattern be something to link to here? Also we have the learning path that we could reference - it provides information targeted at TrustedCommitters, Contributors, Product People... just thinking out loud.

@spier spier moved this to Waiting for Author in Patterns Work Mar 26, 2025
@dicortazar
Copy link
Member Author

@spier, I'll answer inline

@dicortazar thank you for sharing this story of how InnerSource can help in Public Administration.

Some observations from a first read:

The pattern is about a specific "industry" (public administration), which is an approach that we have not used in other patterns so far. How is that industry different from other industries? Do they have challenges that other orgs don't have? Or could we express these challenges in ways that would be applicable to other industries as well.

This was my very first question. But it is true that this is a very specific context. However, I didn't see this as valuable to have all this information in the context, and there are specific challenges that a public administration is facing. Although it is true we can generalize those, I still think there are some specific issues per industry that I am still not sure how to reflect them in patterns.

We can probably summarize (from what I've learned all these years) those as:

  • Very specific way of contracting third parties: there is a specific process on how procurement is done, and this is difficult to change within the organization as this depends on those making the laws. Everyone is constraint by this, the public administration and the suppliers.
  • There is an existing relationship with suppliers that I think it is harder to break if compared to the private sector.
  • Comfort zone and organizational changes: it is harder than in the private sector to force them as public servants have a secured position, processes are typically slower and champions find a lot of walls to move forward.
  • Political direction: this might be closer to how politics work in a big corporation, but depending on the unit, there might be a political responsible at the top of the hierarchy and this may change those directions.
  • Even when there is willingness, it is hard to find the way to work given the rigid structure.

And said all of this, there are public administrations that are able to deal with all of this.

Currently the pattern is rather broad. Like a "story of how to introduce InnerSource in Public Administration". Our other patterns try to describe one problem, and one solution. i.e. they are more focused on one thing only.

I agree with your comment.

One idea:

  • Could we try to take the solutions that you are proposing, and link them to other patterns that we already have?

When I wrote the list of challenges and potential solutions, that's what I thought as well. +1 :).

  • For the problems/solutions that we cannot find patterns for, we could try to explain the solution in a bit more detail (1-3 paragraphs). If we find those ideas convincing, then we could try to write a dedicated patterns for these.

I will go through your text and try to add links to other existing patterns, to see if that helps.

Happy to explore any other ideas of how we could turn these experiences in the Public Administration domain into patterns.

Thank you!

@@ -0,0 +1,78 @@
## Title

InnerSource and Collaboration in Public Administrations
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Taking a step back: You submitting a pattern about InnerSource in public admin to me means InnerSource adoption in the public sector to the degree where there's enough experience to talk about it (semi)publicly - YEAH! That is awesome to read here! Especially with the challenges in the public compared to the private sector.

The problem to solve is how to foster a more collaborative and efficient development ecosystem
within the public administration and between this and its suppliers.
The aim is to promote code sharing, reuse, and knowledge transfer to reduce costs, improve quality,
and accelerate development.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reading this before having read the remainder of the pattern I wonder, if we'll learn about just internal adjustments or also get to look at mandates that come through legislation...


Public administrations are typically slow making decisions, but when a decision is made, this stays
for longer time. Decisions are conservative as they have to serve citizens, and they usually base most
of the development effort in outsourced partners.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Would it make sense to add the reason for the preference for outsourcing here?

The proposed context is the relationship between a public administration, all its suppliers, and the
process to build a trusted collaboration environment. There are not official channels to accelerate
certain developments while the backlog keeps growing over time, even when suppliers are willing to
advance in some of those tasks.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

With a growing number of states putting mandates for "public money, public code" in place, I wonder if this pattern idea might lead us to a better understanding of
a) how InnerSource can help foster collaboration if development happens behind closed doors, but at least the resulting product is shipped under an OSI approved license so the public admin has full control over it
b) a better understanding of when to go for OSS instead
c) a path to increase even public OSS collaboration capabilities of suppliers


## Solutions

To address these challenges, the organization may explore the adoption of InnerSource practices.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"the organization" is fairly vague here: Do you mean "people employed by the public admin to develop systems", "people working for a public admin supplier", "both, public admin employees and supplier employees" or "employees of different suppliers"?


Key elements of the proposed InnerSource approach include:

* Shared Repositories: Establishing a central repository for code, documentation, and other artifacts.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

https://opencode.de/de ... do you mean something like that? (That's the German version, are there equivalents in other countries?)

* Clear Roles and Responsibilities: Defining roles and responsibilities for different stakeholders,
such as project owners, developers, and reviewers.
* Overcoming Legal and Organizational Hurdles: Addressing legal and organizational challenges, such
as intellectual property rights and procurement regulations.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Procurement regulation likely warrants a pattern of it's own - as in: "Which kind of regulation fosters InnerSource/Open Source, which stops it?" - there could even be best practices on how to phrase calls for bids.


## Resulting Context

* Suppliers would start working in a more collaborative way as the legal framework has evolved and allow
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If I'm not mistaken there's two key pieces to this pattern that are specific to public vs. private players:

  • Legal procurement challenges when doing InnerSource/Open Source in the public sector.
  • Potentially highlighting economic incentives for InnerSource/ Open Source in the public sector.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I wonder if we would need localized versions of this pattern as they may differ going from country to country.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
1-initial Donuts, Early pattern ideas, ... (Please see our contribution handbook for details) 📖 Type - Content Work Working on contents is the main focus of this issue / PR
Projects
Status: Waiting for Author
Development

Successfully merging this pull request may close these issues.

3 participants