I want to share that I'm planning to increase my contributions in Forgejo in the coming two years.
The context is that I'm applying for a research position which will be about studying and improving the governance of small FOSS projects. Note that it is not sure whether I will have the position or not - if not, I hope to still do some of this work, but it will have to be on my free time.
Background
My current take on it is that most small FOSS projects don't think a lot about their governance and that the forge platform they use shapes their de-facto governance quite a lot (by virtue of the default permission models, of the terminology used, of fork-and-PR model, and so on). This leads to all sorts of issues, also in bigger projects: the governance issues in Gitea that lead to the creation of Forgejo of course, but also the xz-utils or event-stream incidents, or the current conflict in the Ruby ecosystem.
So I think it's important to improve forges so that they encourage healthy governance, and I think Forgejo is the ideal forge for that. You can read more about my thoughts on this topic in this blog post.
Which governance-related features?
For now I am thinking about things like:
- making it possible to request joining a Forgejo organization, or even nominate someone else
- managing the members of an org in a git repository (in a "GitOps"-way), and possibly other organization settings (similarly to github-org-manager)
- developing usable workflows around the expiration of membership for inactive members
- making it possible to enforce that the membership to a given organization is always public
- encouraging the adoption of a governance model at repository creation
- creating a workflow for filing code of conduct reports to a project (not to the instance moderators)
But also things that aren't directly governance related but still have an impact on team health, such as:
- making it possible to contact a Forgejo user privately even if they don't disclose their email address
- advertising active forks of unmaintained repositories
The scope is intentionally broad and open minded, to adapt the project to the needs that I discover later.
How will you work on those features?
I'm expecting to do a lot of design work (including on their prioritization). I'm keen to have that happen in a way that enables others to participate, for instance within the forgejo/design repo. I don't have a lot of experience in UX research but I'm keen to try out new things.
If some ideas converge towards consensual features, I would love to implement them in Forgejo as well of course.
I'm also planning to increase my contributions to Forgejo as a whole, as a way to help out in other areas too, and to pay forward the reviewing effort that my proposals will generate. If there are particular tasks where you think help would be welcome, let me know.
- Do you think this work would be beneficial to Forgejo?
- Do you have suggestions of other improvements that could be in scope?
- Do you have interest in getting involved in any capacity?
I want to share that I'm planning to increase my contributions in Forgejo in the coming two years.
The context is that I'm applying for a research position which will be about studying and improving the governance of small FOSS projects. Note that it is not sure whether I will have the position or not - if not, I hope to still do some of this work, but it will have to be on my free time.
#### Background
My current take on it is that most small FOSS projects don't think a lot about their governance and that the forge platform they use shapes their de-facto governance quite a lot (by virtue of the default permission models, of the terminology used, of fork-and-PR model, and so on). This leads to all sorts of issues, also in bigger projects: the governance issues in Gitea that lead to the creation of Forgejo of course, but also the xz-utils or event-stream incidents, or the current conflict in the Ruby ecosystem.
So I think it's important to improve forges so that they encourage healthy governance, and I think Forgejo is the ideal forge for that. You can read more about my thoughts on this topic [in this blog post](https://antonin.delpeuch.eu/posts/off-the-shelf-governance-models-for-small-foss-projects/).
#### Which governance-related features?
For now I am thinking about things like:
* making it possible to request joining a Forgejo organization, or even nominate someone else
* managing the members of an org in a git repository (in a "GitOps"-way), and possibly other organization settings (similarly to [github-org-manager](https://github.com/OpenRailAssociation/github-org-manager))
* developing usable workflows around the expiration of membership for inactive members
* making it possible to enforce that the membership to a given organization is always public
* encouraging the adoption of a governance model at repository creation
* creating a workflow for filing code of conduct reports to a project (not to the instance moderators)
But also things that aren't directly governance related but still have an impact on team health, such as:
* making it possible to contact a Forgejo user privately even if they don't disclose their email address
* advertising active forks of unmaintained repositories
The scope is intentionally broad and open minded, to adapt the project to the needs that I discover later.
#### How will you work on those features?
I'm expecting to do a lot of design work (including on their prioritization). I'm keen to have that happen in a way that enables others to participate, for instance within the [forgejo/design](https://codeberg.org/forgejo/design) repo. I don't have a lot of experience in UX research but I'm keen to try out new things.
If some ideas converge towards consensual features, I would love to implement them in Forgejo as well of course.
I'm also planning to increase my contributions to Forgejo as a whole, as a way to help out in other areas too, and to pay forward the reviewing effort that my proposals will generate. If there are particular tasks where you think help would be welcome, let me know.
#### My questions to the Forgejo community
* Do you think this work would be beneficial to Forgejo?
* Do you have suggestions of other improvements that could be in scope?
* Do you have interest in getting involved in any capacity?