forgejo/discussions
49
43

How to make Forgejo durable for the next 10 years? #144

Open
opened 2024年03月27日 18:59:00 +01:00 by earl-warren · 74 comments

Forgejo is barely 18 months old and has all the good qualities it needs to last forever and become a widely used federated forge. But although it is more robust that it ever was, more lively and durable than three months ago, it would be a stretch to pretend it will still be around in ten years.

This durability problem is not rocket science, there are solutions. But one thing is for sure: it won't happen magically, someone has to work on it. Not just throwing ideas (I could list 100 of them right now), but actually do the legwork to make them happen. That will not be me, because it would be overextending myself in ways that would not be wise. And it is unlikely to be anyone already actively working on Forgejo because I assume they are in the same position as I am: too little time and too much on their plate already.

Is anyone willing to take the lead?

Forgejo is barely 18 months old and has all the good qualities it needs to last forever and become a widely used federated forge. But although it is more robust that it ever was, more lively and durable than three months ago, it would be a stretch to pretend it will still be around in ten years. This durability problem is not rocket science, there are solutions. But one thing is for sure: it won't happen magically, someone has to work on it. Not just throwing ideas (I could list 100 of them right now), but actually do the legwork to make them happen. That will not be me, because it would be overextending myself in ways that would not be wise. And it is unlikely to be anyone already actively working on Forgejo because I assume they are in the same position as I am: too little time and too much on their plate already. Is anyone willing to take the lead?

I am fully aware that this is not a very useful discussion starter. But on the odd chance that someone is inspired to answer that call and commit to start on that topic, why not? The worst that can happen is that nobody follow up.

I am fully aware that this is not a very useful discussion starter. But on the odd chance that someone is inspired to answer that call and commit to start on that topic, why not? The worst that can happen is that nobody follow up.
Owner
Copy link

I am not really sure what you imagine this discussion to be. I doubt that an external person is able to take the lead for the durability of the project. It's probably rather a responsibility of the whole Forgejo team:

There are some "trivial" things we need to do to build a framework where Forgejo can grow within:

  • build tooling to ease the development - WIP
  • promote the project - WIP / ok
  • sustain funding - ok so far, forgejo/sustainability#33 would be great
  • communicate with each other and build roadmaps - could be formalized, but somewhat okay

There are technical foundations to build, I don't want to go into detail here, but I have the impression that Forgejo is working on stability and code quality a lot, which is good.

There is also the part where it comes to making decisions for the project, and the part where the codebase can live on but the project could die, because people move to a fork.

  • democratic decision making - done (our governance issue tracker works out pretty well IMHO)
  • trust and backing - most assets are in the hand of Codeberg e.V., which is good
  • listening to feedback and decisions - hard to say, but I really think that Forgejo is in a good position here
  • not turning evil - probably resolved with the Codeberg e.V. and democratic structure

The hard part is to align with the demands of end-users. Effort on user research is starting, but an important aspect is not only what Forgejo users need, but what society needs most. Building a central Git forge is not trivial, but there are some other options. What will be the next thing? Forgejo is working on federation, but maybe another federated forge replaces Forgejo, because it was built from scratch and although it has less features, it is what most people use to finally get usable federation. Radicle is also an interesting option, maybe most people will just use that soon enough? Or people want to rely on the next super cool AI thingy (ok, probably not, but we'll see what time brings), Forgejo misses the trend and is out? It's hard to look into the future, but I think there are some ways on how to approach this:

  • regularly revisit the technical direction of Forgejo and define the focus. Stop accepting major features unless they help with federation (not necessarily implementing it, but getting a little closer to it)?
  • analyze alternatives and their selling points and see if we can benefit from simple integrations
  • or, what most big companies probably do: Accumulate enough (human) power to quickly flexibly switch the direction if you notice you missed a trend. At this point, I think that Forgejo has a big disadvantage. We are navigating an inert ship, we cannot simply turn around. The codebase is big, and compared to the codesize, which is grown historically, the Forgejo team is rather small. If we want adjust directions quicker, we can only focus on more human resources, or get a lighter ship (through heavy refactoring and potentially also dropping some features)

Personally, I believe that improving communication within Forgejo itself and discussing such matters is the first step. If the Forgejo crew works on one direction, this is what will make us better, probably.

I am not really sure what you imagine this discussion to be. I doubt that an external person is able to take the lead for the durability of the project. It's probably rather a responsibility of the whole Forgejo team: There are some "trivial" things we need to do to build a framework where Forgejo can grow within: - build tooling to ease the development - WIP - promote the project - WIP / ok - sustain funding - ok so far, https://codeberg.org/forgejo/sustainability/issues/33 would be great - communicate with each other and build roadmaps - could be formalized, but somewhat okay There are technical foundations to build, I don't want to go into detail here, but I have the impression that Forgejo is working on stability and code quality a lot, which is good. There is also the part where it comes to making decisions for the project, and the part where the codebase can live on but the project could die, because people move to a fork. - democratic decision making - done (our governance issue tracker works out pretty well IMHO) - trust and backing - most assets are in the hand of Codeberg e.V., which is good - listening to feedback and decisions - hard to say, but I really think that Forgejo is in a good position here - not turning evil - probably resolved with the Codeberg e.V. and democratic structure The hard part is to align with the demands of end-users. Effort on user research is starting, but an important aspect is not only what Forgejo users need, but what society needs most. Building a central Git forge is not trivial, but there are some other options. What will be the next thing? Forgejo is working on federation, but maybe another federated forge replaces Forgejo, because it was built from scratch and although it has less features, it is what most people use to finally get usable federation. Radicle is also an interesting option, maybe most people will just use that soon enough? Or people want to rely on the next super cool AI thingy (ok, probably not, but we'll see what time brings), Forgejo misses the trend and is out? It's hard to look into the future, but I think there are some ways on how to approach this: - regularly revisit the technical direction of Forgejo and define the focus. Stop accepting major features unless they help with federation (not necessarily implementing it, but getting a little closer to it)? - analyze alternatives and their selling points and see if we can benefit from simple integrations - or, what most big companies probably do: Accumulate enough (human) power to quickly flexibly switch the direction if you notice you missed a trend. At this point, I think that Forgejo has a big disadvantage. We are navigating an inert ship, we cannot simply turn around. The codebase is big, and compared to the codesize, which is grown historically, the Forgejo team is rather small. If we want adjust directions quicker, we can only focus on more human resources, or get a lighter ship (through heavy refactoring and potentially also dropping some features) Personally, I believe that improving communication within Forgejo itself and discussing such matters is the first step. If the Forgejo crew works on one direction, this is what will make us better, probably.
Member
Copy link

someone has to work on it. Not just throwing ideas (I could list 100 of them right now), but actually do the legwork to make them happen.

We do need a list though : of concrete things, grouped by topic but itemized as smallest tasks as possible. Then, everyone could pick and do.

Also, with a focus on the non-technical side of the project, because it's the most abstract one, yet the one that has the greatest delegation potential.

Radicle is also an interesting option, maybe most people will just use that soon enough?

Peer-to-peer feels very complex compared to federation, I don't think most people would use Radicle over federated Forgejo.

Forgejo misses the trend and is out?

I am seeing only two trends, although not strong ones, and none that Forgejo is missing : self-hosting and federation.

Are there others ? I dunno.

> someone has to work on it. Not just throwing ideas (I could list 100 of them right now), but actually do the legwork to make them happen. We do need a list though : of concrete things, grouped by topic but itemized as smallest tasks as possible. Then, everyone could pick and do. Also, with a focus on the non-technical side of the project, because it's the most abstract one, yet the one that has the greatest delegation potential. > Radicle is also an interesting option, maybe most people will just use that soon enough? Peer-to-peer feels very complex compared to federation, I don't think most people would use Radicle over federated Forgejo. > Forgejo misses the trend and is out? I am seeing only two trends, although not strong ones, and none that Forgejo is missing : self-hosting and federation. Are there others ? I dunno.
Owner
Copy link

The trends example was more of a theoretical question. I think we are currently doing good. But the question is not if Forgejo will still be relevant next year, but in 10 years, and so we will need to keep an eye out 😉

I think that UX has a great potential. No matter the software stack and cool concept ... people still use proprietary software because it sometimes works best for them, and because it is convenient. If you want to be successful for the masses (do we want to be? There is also potential for the niche ...), you need to have a user interface that is appealing, intuitive and easy to use.

The trends example was more of a theoretical question. I think we are currently doing good. But the question is not if Forgejo will still be relevant next year, but in 10 years, and so we will need to keep an eye out 😉 I think that UX has a great potential. No matter the software stack and cool concept ... people still use proprietary software because it sometimes *works best for them*, and because *it is convenient*. If you want to be successful for the masses (do we want to be? There is also potential for the niche ...), you need to have a user interface that is appealing, intuitive and easy to use.
Member
Copy link

Well, in the UX side, yes, there are strong and long-term trends that Forgejo is misisng : mobile-first design, and client-side navigation. But as mentioned before in other discussions, those are unreachable without a rewrite.

Well, in the UX side, yes, there are strong and long-term trends that Forgejo is misisng : mobile-first design, and client-side navigation. But as mentioned before in other discussions, those are unreachable without a rewrite.

I doubt that an external person is able to take the lead for the durability of the project. It's probably rather a responsibility of the whole Forgejo team:

There is no doubt that whatever happens will only be successful if all people involved in Forgejo currently are in agreement with it. But I really think solving the durability problem cannot happen unless someone spend a significant amount of time working on it.

It could be someone from the existing Forgejo contributors who decides to shift their focus. It would be a loss regarding what they are currently involved in. But they would be in the best position.

It could also be someone new to Forgejo and they could quickly, in a matter of weeks, become a significant contributor, there is nothing stopping them. Here is one thing they could begin with: writing a NLnet grant application for the benefit of Codeberg & @algernon @oliverpool for the 1 April deadline. That's one baby step. And then move on to something else, make plans, be more ambitious.

I really strongly think the key is not to discuss ideas, there are plenty. The key is finding someone.

> I doubt that an external person is able to take the lead for the durability of the project. It's probably rather a responsibility of the whole Forgejo team: There is no doubt that whatever happens will only be successful if all people involved in Forgejo currently are in agreement with it. But I really think solving the durability problem **cannot happen unless someone spend a significant amount of time working on it.** It could be someone from the existing Forgejo contributors who decides to shift their focus. It would be a loss regarding what they are currently involved in. But they would be in the best position. It could also be someone new to Forgejo and they could quickly, in a matter of weeks, become a significant contributor, there is nothing stopping them. Here is one thing they could begin with: writing a NLnet grant application for the benefit of Codeberg & @algernon @oliverpool for the 1 April deadline. That's one baby step. And then move on to something else, make plans, be more ambitious. I really strongly think the key is not to discuss ideas, there are plenty. The key is finding someone.
Member
Copy link

writing a NLnet grant application

For anyone interested in doing that, here's the link to the form : https://nlnet.nl/propose/

That's definitely not something that an inexperienced person can do once arriving at the Requested support section.

for the benefit of Codeberg & @algernon @oliverpool

Could you explain why must Codeberg and two individuals be the beneficiaries of this grant, instead of Forgejo, as well as the implications of Forgejo's durability depending on them ?

I really strongly think the key is not to discuss ideas, there are plenty. The key is finding someone.

I don't see how one cannot be done without the other : no one is ever going to say "I volunteer to do whatever needs to be done". A list is required.

> writing a NLnet grant application For anyone interested in doing that, here's the link to the form : https://nlnet.nl/propose/ That's definitely not something that an inexperienced person can do once arriving at the *Requested support* section. > for the benefit of Codeberg & @algernon @oliverpool Could you explain why must Codeberg and two individuals be the beneficiaries of this grant, instead of Forgejo, as well as the implications of Forgejo's durability depending on them ? > I really strongly think the key is not to discuss ideas, there are plenty. The key is finding someone. I don't see how one cannot be done without the other : no one is ever going to say "I volunteer to do whatever needs to be done". A list is required.

writing a NLnet grant application

For anyone interested in doing that, here's the link to the form : https://nlnet.nl/propose/

That's definitely not something that an inexperienced person can do once arriving at the Requested support section.

Someone with previous experience applying to NLnet grants can easily contribute this to Forgejo. This was just an example: someone with a skillset that can contribute to Forgejo durability (fundraising is one) can participate right away.

for the benefit of Codeberg & @algernon @oliverpool

Could you explain why must Codeberg and two individuals be the beneficiaries of this grant, instead of Forgejo, as well as the implications of Forgejo's durability depending on them ?

It is not a requirement, it is an example.

I really strongly think the key is not to discuss ideas, there are plenty. The key is finding someone.

I don't see how one cannot be done without the other : no one is ever going to say "I volunteer to do whatever needs to be done". A list is required.

What I'm saying is that there already are plenty of ideas, this is done, there is no need to add more.

But there is not yet one person willing to dedicate themselves to implement these ideas. I could easily spend one hour making a list of the top 10 ideas that have already been voiced over the past year. But a person willing to spend months of their time to improve Forgejo durability will also do that, almost as easily. More importantly they will come up with a list that is different than mine because of their background and their particular skillset. They will come up with a list of idea they feel they can implement and noone else can guess that in advance.

It would be backward to imagine that Forgejo, as a project, will recruit someone to work on durability in the same way a company recruits an employee, with a job description and a list of task to attend to. Such a person is extraordinarily difficult to find even if an organization can spare the money to pay their salary. But it is also not how people who participate on a daily basis came to Forgejo, the appeal was something else.

I think possible that someone, somewhere hears about this discussion and decide to give it a shot. Because Forgejo is a unique project and that it is a rare opportunity to actually do work in the interest of the general public.

> > writing a NLnet grant application > > For anyone interested in doing that, here's the link to the form : https://nlnet.nl/propose/ > > That's definitely not something that an inexperienced person can do once arriving at the *Requested support* section. Someone with previous experience applying to NLnet grants can easily contribute this to Forgejo. This was just an example: someone with a skillset that can contribute to Forgejo durability (fundraising is one) can participate right away. > > for the benefit of Codeberg & @algernon @oliverpool > > Could you explain why must Codeberg and two individuals be the beneficiaries of this grant, instead of Forgejo, as well as the implications of Forgejo's durability depending on them ? It is not a requirement, it is an example. > > I really strongly think the key is not to discuss ideas, there are plenty. The key is finding someone. > > I don't see how one cannot be done without the other : no one is ever going to say "I volunteer to do whatever needs to be done". A list is required. What I'm saying is that there already are plenty of ideas, this is done, there is no need to add more. But there is not yet one person willing to dedicate themselves to implement these ideas. I could easily spend one hour making a list of the top 10 ideas that have already been voiced over the past year. But a person willing to spend months of their time to improve Forgejo durability will also do that, almost as easily. More importantly they will come up with **a list that is different than mine** because of their background and their particular skillset. They will come up with a list of idea they feel they can implement and noone else can guess that in advance. It would be backward to imagine that Forgejo, as a project, will recruit someone to work on durability in the same way a company recruits an employee, with a job description and a list of task to attend to. Such a person is extraordinarily difficult to find even if an organization can spare the money to pay their salary. But it is also not how people who participate on a daily basis came to Forgejo, the appeal was something else. I think possible that someone, somewhere hears about this discussion and decide to give it a shot. Because Forgejo is a unique project and that it is a rare opportunity to actually do work in the interest of the general public.
Member
Copy link

So you're not only looking for a person who can do, but also figure out what to do, i.e. a manager. Well, sorry for taking your time, I thought I could find a way to participate in fulfilling this need but I actually don't have what it takes. 😅

That said, if you ever find that person, I'd be happy to work for them. ^^

Good luck !

So you're not only looking for a person who can do, but also **figure out what** to do, i.e. a *manager*. Well, sorry for taking your time, I thought I could find a way to participate in fulfilling this need but I actually don't have what it takes. 😅 That said, if you ever find that person, I'd be happy to work for them. ^^ Good luck !

So you're not only looking for a person who can do, but also figure out what to do...

This is well put. And I agree that the odds are not great. But they may be just slightly better since this thread exists and someone with the right skills and mindset knows they would be welcome.

P.S. A "manager" or someone you would "work for" in the wikipedia sense often are responsible for ensuring the durability of the organization, among other things. But since Forgejo is not incorporated, I don't quite see what a manager could do. In addition, as a volunteer, I'm quite sure I would not welcome the idea of my activities being "managed" by someone I would "work for". I work for the interest of the general public, always. An abstract idea that cannot be embodied by a person or an organization.

> So you're not only looking for a person who can do, but also figure out what to do... This is well put. And I agree that the odds are not great. But they may be just slightly better since this thread exists and someone with the right skills and mindset knows they would be welcome. P.S. A "manager" or someone you would "work for" in the [wikipedia sense](https://en.wikipedia.org/wiki/Management) often are responsible for ensuring the durability of the organization, among other things. But since Forgejo is not incorporated, I don't quite see what a manager could do. In addition, as a volunteer, I'm quite sure I would not welcome the idea of my activities being "managed" by someone I would "work for". I work for the interest of the general public, always. An abstract idea that cannot be embodied by a person or an organization.
Member
Copy link

Would "work with" sound better ?

Regardless of the wording, my point is, while I'm not the kind of person who can determine the tasks, I am the kind of person who can do some of the tasks, so if you ever find someone to do the latter, then I'd be glad to participate in ticking some checkboxes from their task list.

Would "work *with*" sound better ? Regardless of the wording, my point is, while I'm not the kind of person who can determine the tasks, I am the kind of person who can do some of the tasks, so if you ever find someone to do the latter, then I'd be glad to participate in ticking some checkboxes from their task list.

Maybe some areas could be defined around "durability". I see the following:

  • code expertise (being able to work with the codebase to perform code reviews, fix bugs, add or remove features)
  • user support (to help people reporting bugs or security issues, in the issue tracker, per e-mail, on matrix, on the fediverse)
  • "institutional" communication (for blog posts and fediverse presence)
  • infrastructure (to maintain the {code,next,www,...}.forgejo.org domains and the software+hardware behind it)
  • community management (to help with governance/fundraising/moderation)

I think the funding itself is not standalone subject, but rather as an option to get people involved in those areas (employee-delegation and voluntary work are also options for those areas).

Did I overlook some of those areas?


Maybe we could put some health-indicators around those areas, like:

  • who is currently filling this position (along the bus-factor)
  • how durable is their position (e.g. "user likely present until 2024-XX-XX")
  • how diverse is the team (regarding timezones, countries continents, gender...)
  • ...
Maybe some areas could be defined around "durability". I see the following: - code expertise (being able to work with the codebase to perform code reviews, fix bugs, add or remove features) - user support (to help people reporting bugs or security issues, in the issue tracker, per e-mail, on matrix, on the fediverse) - "institutional" communication (for blog posts and fediverse presence) - infrastructure (to maintain the {code,next,www,...}.forgejo.org domains and the software+hardware behind it) - community management (to help with governance/fundraising/moderation) I think the funding itself is not standalone subject, but rather as an option to get people involved in those areas (employee-delegation and voluntary work are also options for those areas). Did I overlook some of those areas? --- Maybe we could put some health-indicators around those areas, like: - who is currently filling this position (along the bus-factor) - how durable is their position (e.g. "user likely present until 2024-XX-XX") - how diverse is the team (regarding timezones, countries continents, gender...) - ...

An idea would be to apply to https://www.opentech.fund/. They support projects of a large magnitude over many years with significantly more money that NLnet can. A good application would lead to a good document regarding the state of Forgejo and its strength & weakness in terms of durability.

I'm told OTF already knows about Forgejo and encourages a grant application (an ambitious one over a few years with enough money to have paid staff on various topics). Which makes total sense given that it is the only community led forge with any momentum. There is just no competition.

It is not like NLnet: applications are reviewed all the time and take about three months.

An idea would be to apply to https://www.opentech.fund/. They support projects of a large magnitude over many years with significantly more money that NLnet can. A good application would lead to a good document regarding the state of Forgejo and its strength & weakness in terms of durability. I'm told OTF already knows about Forgejo and encourages a grant application (an ambitious one over a few years with enough money to have paid staff on various topics). Which makes total sense given that it is the only community led forge with any momentum. There is just no competition. It is not like NLnet: applications are reviewed all the time and take about three months.
Member
Copy link

As OpenSource enthusiasts, we have often thought about sustainability of OpenSource projects. Let me lay out our thoughts on this:

Maintainers and reviewers who invest a large part of their live time in a project should be paid for their work, so that they can also live on it.

In order to generate revenue for this work, the maintainers and reviewers could offer a

PR Review SLA.

With such an SLA we (the maintainers and reviewers community) would commit to review PRs within x days and to get in touch to PR author (this will not oblige us to accept such PRs).

As a company which potentially wants to offer service around forgejo, we (meissa) would welcome such an SLA so that we can pass it on to customers transparently. I suspect that other service providers may also find this useful.

When forgejo is widely adopted, we already have a model (along with funding from other sources) with which we can still handle the increasing workload through user needs, be they from the masses or niche (we assume scaling will be easier).

As OpenSource enthusiasts, we have often thought about sustainability of OpenSource projects. Let me lay out our thoughts on this: **Maintainers and reviewers who invest a large part of their live time in a project should be paid for their work, so that they can also live on it.** In order to generate revenue for this work, the maintainers and reviewers could offer a **PR Review SLA**. With such an SLA we (the maintainers and reviewers community) would commit to review PRs within x days and to get in touch to PR author (this will not oblige us to accept such PRs). As a company which potentially wants to offer service around forgejo, we (meissa) would welcome such an SLA so that we can pass it on to customers transparently. I suspect that other service providers may also find this useful. When forgejo is widely adopted, we already have a model (along with funding from other sources) with which we can still handle the increasing workload through user needs, be they from the masses or niche (we assume scaling will be easier).

Maintainers and reviewers who invest a large part of their live time in a project should be paid for their work, so that they can also live on it.

I agree, but someone has to pay that Money. I'm also not sure about the legal consequences of that Action e.g. does that make the Maintainers technically Employees?

PR Review SLA

Does that mean I can pay, so my PR get reviewed faster?

> Maintainers and reviewers who invest a large part of their live time in a project should be paid for their work, so that they can also live on it. I agree, but someone has to pay that Money. I'm also not sure about the legal consequences of that Action e.g. does that make the Maintainers technically Employees? > PR Review SLA Does that mean I can pay, so my PR get reviewed faster?

Maintainers and reviewers who invest a large part of their live time in a project should be paid for their work, so that they can also live on it.

I agree, but someone has to pay that Money. I'm also not sure about the legal consequences of that Action e.g. does that make the Maintainers technically Employees?

Not necessarily, no. Various contributions of mine to Forgejo have been paid for by at least three different entities so far, and I was never an employee of either one of them.

> > Maintainers and reviewers who invest a large part of their live time in a project should be paid for their work, so that they can also live on it. > > I agree, but someone has to pay that Money. I'm also not sure about the legal consequences of that Action e.g. does that make the Maintainers technically Employees? Not necessarily, no. Various contributions of mine to Forgejo have been paid for by at least three different entities so far, and I was never an employee of either one of them.
Member
Copy link

Maintainers and reviewers who invest a large part of their live time in a project should be paid for their work, so that they can also live on it.

I agree, but someone has to pay that Money. I'm also not sure about the legal consequences of that Action e.g. does that make the Maintainers technically Employees?

We could manage projects budget with https://en.liberapay.com/ or comparable. I assume there has to be a trusted person or legal entity to manage / pay invoices for review work. Whether this payment goes direct to a reviewer or via employment pay checks is both feasible. At least in Germany ...

PR Review SLA

Does that mean I can pay, so my PR get reviewed faster?

If we choose the "x days" wise, the result will be:

  • In the relaxed case we can act the same way as usual.
  • In case of heavy overload this would be the effect, yes
> > Maintainers and reviewers who invest a large part of their live time in a project should be paid for their work, so that they can also live on it. > > I agree, but someone has to pay that Money. I'm also not sure about the legal consequences of that Action e.g. does that make the Maintainers technically Employees? We could manage projects budget with https://en.liberapay.com/ or comparable. I assume there has to be a trusted person or legal entity to manage / pay invoices for review work. Whether this payment goes direct to a reviewer or via employment pay checks is both feasible. At least in Germany ... > > PR Review SLA > > Does that mean I can pay, so my PR get reviewed faster? If we choose the "x days" wise, the result will be: * In the relaxed case we can act the same way as usual. * In case of heavy overload this would be the effect, yes

As a volunteer, I'm very conscious and careful about how various influences on the Forgejo project can push it in a direction that would make it more difficult for me to participate. I software forges such as Tuleap, RhodeCode, Gforge or GitLab, just to name a few the total domination of a single company over the project is a definitive blocker for me. They are driven by money only and my participation will be always supremely difficult unless it helps them make more money one way or the other.

In the case of forges such as Allura, Forgejo or Phorge, although some contributors are paid or plan to be paid one day, volunteers can play a role without undue interference caused by them. Each project strikes a different balance and I much prefer the Forgejo project in that respect, but I think they are all a healthy place for volunteers to participate.

That being said it is a balance that constantly needs to be negotiated. That's where the https://codeberg.org/forgejo/sustainability/ repository helps: visiting it from time to time I can get insight regarding how money flows into Forgejo and get an idea of how it would influence my participation as a volunteer. @jerger idea about Pr Review SLA is new to me and I think it is in line with other kinds of paid work done so far. Of course there could be abuse that leads to something unhealthy but that's something I will raise concern about when it happens. However it may never be of any concern so I see no objection to it.

As a volunteer, I'm very conscious and careful about how various influences on the Forgejo project can push it in a direction that would make it more difficult for me to participate. I software forges such as Tuleap, RhodeCode, Gforge or GitLab, just to name a few the total domination of a single company over the project is a definitive blocker for me. They are driven by money only and my participation will be always supremely difficult unless it helps them make more money one way or the other. In the case of forges such as Allura, Forgejo or Phorge, although some contributors are paid or plan to be paid one day, volunteers can play a role without undue interference caused by them. Each project strikes a different balance and I much prefer the Forgejo project in that respect, but I think they are all a healthy place for volunteers to participate. That being said it is a balance that **constantly needs to be negotiated**. That's where the https://codeberg.org/forgejo/sustainability/ repository helps: visiting it from time to time I can get insight regarding how money flows into Forgejo and get an idea of how it would influence my participation as a volunteer. @jerger idea about Pr Review SLA is new to me and I think it is in line with other kinds of paid work done so far. Of course there could be abuse that leads to something unhealthy but that's something I will raise concern about when it happens. However it may never be of any concern so I see no objection to it.

If we choose the "x days" wise, the result will be:

  • In the relaxed case we can act the same way as usual.
  • In case of heavy overload this would be the effect, yes

That's a huge no go for me. As a developer I put time and effort into my PRs. Some of my PRs are very big. I don't like the idea of being a second class developer after working in my free time just because my PR is not interesting for enterprise usage.

I understand that Forgejo needs Money, but when Forgejo prioritize Features which have been paid, it's no longer a Community focused project.

Various contributions of mine to Forgejo have been paid for by at least three different entities so far, and I was never an employee of either one of them.

If you've peen paid by different entities, it should be no problem. Buta s far as I know, you need to register a Business when you are live in Germany (I don't know what you are, but I'm German, so I'm talking about the German law here) and do this regular.

The Problem is when Maintainers are directly paid by Forgejo (and just Forgejo) for reviewingPRs. As Forgejo is German based, this could be Scheinselbständigkeit, if they are not Employers.

I'm not a Lawyer, so what I wrote might be complete wrong, but I want to express my concerns, that legal things might chnace if you get Money instead of just doing it just as a Hobby.

> If we choose the "x days" wise, the result will be: > > - In the relaxed case we can act the same way as usual. > - In case of heavy overload this would be the effect, yes That's a huge no go for me. As a developer I put time and effort into my PRs. Some of my PRs are very big. I don't like the idea of being a second class developer after working in my free time just because my PR is not interesting for enterprise usage. I understand that Forgejo needs Money, but when Forgejo prioritize Features which have been paid, it's no longer a Community focused project. > Various contributions of mine to Forgejo have been paid for by at least three different entities so far, and I was never an employee of either one of them. If you've peen paid by different entities, it should be no problem. Buta s far as I know, you need to register a Business when you are live in Germany (I don't know what you are, but I'm German, so I'm talking about the German law here) and do this regular. The Problem is when Maintainers are directly paid by Forgejo (and just Forgejo) for reviewingPRs. As Forgejo is German based, this could be [Scheinselbständigkeit](https://www.ihk.de/hamburg/produktmarken/beratung-service/recht-und-steuern/wirtschaftsrecht/arbeitsrecht/scheinselbststaendigkeit-1350386), if they are not Employers. I'm not a Lawyer, so what I wrote might be complete wrong, but I want to express my concerns, that legal things might chnace if you get Money instead of just doing it just as a Hobby.

That's a huge no go for me. As a developer I put time and effort into my PRs. Some of my PRs are very big. I don't like the idea of being a second class developer after working in my free time just because my PR is not interesting for enterprise usage.

As a volunteer just like yourself, being a second class citizen would also be a huge no go for me. I am in favor of @jerger proposal because it could mean more time is spent on reviewing PRs rather than less time, overall.

In a situation where nobody is paid for their work, a purely volunteer project, there is no risk of volunteer work being dominated by paid work, no risk of volunteers being second class citizens. As soon as a project is ok with paid staff working alongside volunteers, every participant must be careful to preserve a healthy balance between volunteers and paid staff. It is never going to be carved in stone, it will always be in flux.

Forgejo is already a project that, since its inception, had paid staff working alongside volunteers. And there are a number of discussions regarding how to preserve a good balance. @JakobDev comment is, IMHO, in that spirit. At least that's how I read it.

@JakobDev in conclusion the risk that you highlight is real. But it is a risk, not a certainty. It is something to be careful about but not a reason to disapprove that idea.

> That's a huge no go for me. As a developer I put time and effort into my PRs. Some of my PRs are very big. I don't like the idea of being a second class developer after working in my free time just because my PR is not interesting for enterprise usage. As a volunteer just like yourself, being a second class citizen would also be a huge no go for me. I am in favor of @jerger proposal because it could mean **more time is spent on reviewing PRs** rather than less time, overall. In a situation where nobody is paid for their work, a purely volunteer project, there is no risk of volunteer work being dominated by paid work, no risk of volunteers being second class citizens. As soon as a project is ok with paid staff working alongside volunteers, every participant must be careful to preserve a healthy balance between volunteers and paid staff. It is never going to be carved in stone, it will always be in flux. Forgejo is already a project that, since its inception, had paid staff working alongside volunteers. And there are a number of discussions regarding how to preserve a good balance. @JakobDev comment is, IMHO, in that spirit. At least that's how I read it. @JakobDev in conclusion the risk that you highlight is real. But it is a risk, not a certainty. It is something to be careful about but not a reason to disapprove that idea.

that legal things might chnace if you get Money instead of just doing it just as a Hobby.

This is correct (and I think most people are already aware of this). Scheinselbständigkeit is only a problem if you do freelance work for mainly 1 customer.

That's a huge no go for me. As a developer I put time and effort into my PRs. Some of my PRs are very big. I don't like the idea of being a second class developer after working in my free time just because my PR is not interesting for enterprise usage.

Since Forgejo is not a commercial entity (and does not aim to become), I don't think that this will apply.
However specific contributors can propose review SLA (but in their own name, not in the name of Forgejo) and should be encouraged to share such commercial relations.

Just like some PRs are marked "work sponsored by ...", you could have a review "review sponsored by ...".
It does not make the other PRs (or reviews) second-class.

I think having the transparency is of the utmost importance, because it should prevent some bad behaviors as well as document existing patterns to help form a better environment.

> that legal things might chnace if you get Money instead of just doing it just as a Hobby. This is correct (and I think most people are already aware of this). Scheinselbständigkeit is only a problem if you do freelance work for mainly 1 customer. > That's a huge no go for me. As a developer I put time and effort into my PRs. Some of my PRs are very big. I don't like the idea of being a second class developer after working in my free time just because my PR is not interesting for enterprise usage. Since Forgejo is not a commercial entity (and does not aim to become), I don't think that this will apply. However **specific contributors** can propose review SLA (but in their own name, not in the name of Forgejo) and should be encouraged to share such commercial relations. Just like some PRs are marked "work sponsored by ...", you could have a review "review sponsored by ...". It does not make the other PRs (or reviews) second-class. I think having the transparency is of the utmost importance, because it should prevent some bad behaviors as well as document existing patterns to help form a better environment.
Member
Copy link

That's a huge no go for me. As a developer I put time and effort into my PRs. Some of my PRs are very big. I don't like the idea of being a second class developer after working in my free time just because my PR is not interesting for enterprise usage.

During the past years I've seen many OpenSource projects gone wrong or turned evil. In some it was caused by dispute among maintainers, lack of interest, "works for me is good enough", burnout, takeover and VentureCapital takeover.

So it is important to find a honest, healthy and sufficient way to work on a OpenSource project.

In a situation where nobody is paid for their work, a purely volunteer project, there is no risk of volunteer work being dominated by paid work, no risk of volunteers being second class citizens. As soon as a project is ok with paid staff working alongside volunteers, every participant must be careful to preserve a healthy balance between volunteers and paid staff. It is never going to be carved in stone, it will always be in flux.

Regarding "PR Review SLA" I know no project having tried out something like this. I assume we would be pioneers.

I think constant negotiation and reflection would be the most important aspect in this experiment.
As for your concerns, I can totaly agree. Monopolist is an proven antipattern.
I've seen so much monopolists turning evil that I state this pattern to be always true.
From my point of view the following community principles are important:

  • Community has to be organized democratic (each person (natural or legal) has exactly one voice counting).
  • We should commit on bill of human rights
  • We should activly protect minorities

As long as these principles are in place, I am fine with volunteering in such communities.
My hope is we have agreed on this in forgejo :-).

Just like some PRs are marked "work sponsored by ...", you could have a review "review sponsored by ...".
It does not make the other PRs (or reviews) second-class.

I think having the transparency is of the utmost importance, because it should prevent some bad behaviors as well as document existing patterns to help form a better environment.

From my point of view that is a really cool idea :-)

> > That's a huge no go for me. As a developer I put time and effort into my PRs. Some of my PRs are very big. I don't like the idea of being a second class developer after working in my free time just because my PR is not interesting for enterprise usage. During the past years I've seen many OpenSource projects gone wrong or turned evil. In some it was caused by dispute among maintainers, lack of interest, "works for me is good enough", burnout, takeover and VentureCapital takeover. So it is important to find a honest, healthy and sufficient way to work on a OpenSource project. > In a situation where nobody is paid for their work, a purely volunteer project, there is no risk of volunteer work being dominated by paid work, no risk of volunteers being second class citizens. As soon as a project is ok with paid staff working alongside volunteers, every participant must be careful to preserve a healthy balance between volunteers and paid staff. It is never going to be carved in stone, it will always be in flux. Regarding "PR Review SLA" I know no project having tried out something like this. I assume we would be pioneers. I think constant negotiation and reflection would be the most important aspect in this experiment. As for your concerns, I can totaly agree. Monopolist is an proven antipattern. I've seen so much monopolists turning evil that I state this pattern to be always true. From my point of view the following community principles are important: * Community has to be organized democratic (each person (natural or legal) has exactly one voice counting). * We should commit on bill of human rights * We should activly protect minorities As long as these principles are in place, I am fine with volunteering in such communities. My hope is we have agreed on this in forgejo :-). > Just like some PRs are marked "work sponsored by ...", you could have a review "review sponsored by ...". > It does not make the other PRs (or reviews) second-class. > > I think having the transparency is of the utmost importance, because it should prevent some bad behaviors as well as document existing patterns to help form a better environment. From my point of view that is a really cool idea :-)

I just stumbled upon https://lobste.rs/s/7ooars/contributing_ocaml_collective which points to https://github.com/ocaml/ocaml/blob/trunk/CONTRIBUTING.md#collective-maintenance which writes:

If your contributions generate maintenance work for others -- in particular, if you spend a substantial effort working on a change to the language or compiler codebase meant to be eventually proposed upstream -- we expect that you will spend a fraction of your contribution time on maintenance tasks, typically on the parts of the compiler codebase that you are already working on. This approach is good for the project, and also for you: helping maintain the codebase will improve the quality of your own contributions, and the social ties created by infrequent collaboration with other contributors will be useful when submitting your own work.

(this is kind of "throwing an idea" in, which wasn't the main topic of this issue - but I think it could help Forgejo's durability)

I just stumbled upon https://lobste.rs/s/7ooars/contributing_ocaml_collective which points to https://github.com/ocaml/ocaml/blob/trunk/CONTRIBUTING.md#collective-maintenance which writes: > If your contributions generate maintenance work for others -- in particular, if you spend a substantial effort working on a change to the language or compiler codebase meant to be eventually proposed upstream -- we expect that you will spend a fraction of your contribution time on maintenance tasks, typically on the parts of the compiler codebase that you are already working on. This approach is good for the project, and also for you: helping maintain the codebase will improve the quality of your own contributions, and the social ties created by infrequent collaboration with other contributors will be useful when submitting your own work. (this is kind of "throwing an idea" in, which wasn't the main topic of this issue - but I think it could help Forgejo's durability)

I will draft a grant application for the Free and Open Source Software Sustainability Fund. It seems a good fit and 400,000 USD over two years could help set Forgejo on the path to be durable, if done right. Since Forgejo has a strong stance on transparency, working on this draft publicly seems to be appropriate.

It may take a while before it can be reviewed and I'll post a followup message when it is. However early comments & reviews are welcome. The goal is for this grant application to be something people and organizations actively contributing to Forgejo would like to support. Otherwise it would be pointless.

P.S. Forgejo meets the eligibility requirements. The over three years existence is true of the codebase as well as the Codeberg user base. The fork initiated late 2022 and named Forgejo was what saved the codebase from becoming an Open Core project dominated by a single for profit company. It was not when the first line of code was written.

I will [draft a grant application](https://pad.gusted.xyz/aOKqNgHJSFmAbMEvo8fXKg#) for the [Free and Open Source Software Sustainability Fund](https://www.opentech.fund/funds/free-and-open-source-software-sustainability-fund/). It seems a good fit and 400,000 USD over two years could help set Forgejo on the path to be durable, if done right. Since Forgejo has a strong stance on transparency, working on this draft publicly seems to be appropriate. It may take a while before it can be reviewed and I'll post a followup message when it is. However early comments & reviews are welcome. The goal is for this grant application to be something people and organizations actively contributing to Forgejo would like to support. Otherwise it would be pointless. P.S. Forgejo meets the eligibility requirements. The over three years existence is true of the codebase as well as the Codeberg user base. The fork initiated late 2022 and named Forgejo was what saved the codebase from becoming an Open Core project dominated by a single for profit company. It was not when the first line of code was written.

It is of vital importance to me that any funding application seeking to help with the durability of Forgejo preserves a healthy balance between paid staff and volunteers. Transparency is one way to do that.

It is of vital importance to me that any funding application seeking to help with the durability of Forgejo preserves a healthy balance between paid staff and volunteers. Transparency is one way to do that.

I drafted the Problem statement and Sustainability sections of the proposal.

Step one: 17 May

This grant application will only work out if all active Forgejo contributors are in agreement. This draft will be amended to address any concerns and attempt to reach a consensus. If it is successful, it will be submitted 17 May (deadline for applications). If not, it will be withdrawn.

Step two: 1 October

After the submission and assuming it passes all roadblocks, a full proposal will be written. And again, all active Forgejo contributors will have to be in agreement for it to move forward. If it is successful, it will be submitted 1 October (deadline for signing the grant). If not, it will be withdrawn.

I [drafted](https://pad.gusted.xyz/aOKqNgHJSFmAbMEvo8fXKg) the **Problem statement** and **Sustainability** sections of the proposal. ## Step one: 17 May This grant application will only work out if all active Forgejo contributors are in agreement. This draft will be amended to address any concerns and attempt to reach a consensus. If it is successful, it will be submitted 17 May (deadline for applications). If not, it will be withdrawn. ## Step two: 1 October After the submission and assuming it passes all roadblocks, a full proposal will be written. And again, all active Forgejo contributors will have to be in agreement for it to move forward. If it is successful, it will be submitted 1 October (deadline for signing the grant). If not, it will be withdrawn.

This may be a turning point for Forgejo and, if successful, could make it durable for the next 10 years. I am on board with what is drafted so far.

The transparency aspect is the most important to me. I am fine with an organization existing to distribute funds to other Forgejo actors, this is healthy. But only on condition that it is truly transparent, meaning all expenses, communications and income are publicly available. As a volunteer I prefer to read the raw data rather than a redacted version of them from which I would have difficulties figuring out what is missing.

This does not need to be explained in this concept note. But this should be made clear in the FAQ.

As a volunteer I also appreciate the attention to preserve the current balance. When significant funding is involved, there is a risk of having the project dominated by paid staff.

Finally, it is easy for me to be in agreement on that first step because I can always change my mind on 1 October if it turns out the final proposal has elements that I do not like.

This may be a turning point for Forgejo and, if successful, could make it durable for the next 10 years. I am on board with what is drafted so far. The transparency aspect is the most important to me. I am fine with an organization existing to distribute funds to other Forgejo actors, this is healthy. But only on condition that it is truly transparent, meaning all expenses, communications and income are publicly available. As a volunteer I prefer to read the raw data rather than a redacted version of them from which I would have difficulties figuring out what is missing. This does not need to be explained in this concept note. But this should be made clear in the FAQ. As a volunteer I also appreciate the attention to preserve the current balance. When significant funding is involved, there is a risk of having the project dominated by paid staff. Finally, it is easy for me to be in agreement on that first step because I can always change my mind on 1 October if it turns out the final proposal has elements that I do not like.

@jean-daricade seeing that there is a strong User Research element in the grant application, I pinged @ei8fdb who is a User Research professional, involved in https://opensourcedesign.net/ to have their input on the proposed approach.

@jean-daricade seeing that there is a strong User Research element in the grant application, I pinged @ei8fdb who is [a User Research professional](https://codeberg.org/forgejo/discussions/issues/69#issuecomment-1795111), involved in https://opensourcedesign.net/ to have their input on the proposed approach.

@jean-daricade wrote:

Step one: 17 May

This grant application will only work out if all active Forgejo contributors are in agreement. This draft will be amended to address any concerns and attempt to reach a consensus. If it is successful, it will be submitted 17 May (deadline for applications). If not, it will be withdrawn.

I had a quick read of the draft, and am liking where it is going. Thank you for drafting it! Let me know if I can help in making it succeed.

@jean-daricade [wrote](https://codeberg.org/forgejo/discussions/issues/144#issuecomment-1791323): > ## Step one: 17 May > > This grant application will only work out if all active Forgejo contributors are in agreement. This draft will be amended to address any concerns and attempt to reach a consensus. If it is successful, it will be submitted 17 May (deadline for applications). If not, it will be withdrawn. I had a quick read of the draft, and am liking where it is going. Thank you for drafting it! Let me know if I can help in making it succeed.

I added the "Users & Beneficiaries" section to the draft. If anyone has quantitative data to add, that would be great. It would also help to explain in more words in what sense human rights defenders depend on technology that is developed without relying on a large US corporation (GitHub / Microsoftt or GitLab).

I added the "Users & Beneficiaries" section to the draft. If anyone has quantitative data to add, that would be great. It would also help to explain in more words in what sense human rights defenders depend on technology that is developed without relying on a large US corporation (GitHub / Microsoftt or GitLab).
Member
Copy link

Quick question, how can all active Forgejo contributors be in agreement? What is classified as a contributor in this case, given that the list of our contributors includes all participants in our Monthly Reports, and how does this set express agreement as soon as possible?

Quick question, how can *all* active Forgejo contributors be in agreement? What is classified as a contributor in this case, given that the list of our contributors includes *all* participants in our [Monthly Reports](https://forgejo.org/2024-03-monthly-update/#we-forge), and how does this set express agreement as soon as possible?

In the same way an agreement is reached for other decisions. It is sometime difficult (in the case of the hard fork it certainly was) but everyone can voice their concerns and expect they are addressed.

In the same way [an agreement is reached for other decisions](https://codeberg.org/forgejo/governance/src/branch/main/DECISION-MAKING.md). It is sometime difficult (in the case of the hard fork it certainly was) but everyone can voice their concerns and expect they are addressed.
Owner
Copy link

@n0toose I'd consider this to be true if this is a passing governance discussion. There are some weeks to reach a consensus in the issue and everyone can raise objections. This worked good enough in the past.

If someone does not speak up within some weeks, I think it can be considered an agreement.

@n0toose I'd consider this to be true if this is a passing governance discussion. There are some weeks to reach a consensus in the issue and everyone can raise objections. This worked good enough in the past. If someone does not speak up within some weeks, I think it can be considered an agreement.
Owner
Copy link

I have read the messages above and the proposal. It is well written, seems to be pretty good balanced and thoughtfully covers many important areas. Thank you for working on it! I'm sure it will help Forgejo be a good and popular software in the long term.

I have read the messages above and the proposal. It is well written, seems to be pretty good balanced and thoughtfully covers many important areas. Thank you for working on it! I'm sure it will help Forgejo be a good and popular software in the long term.
Member
Copy link

I think the idea is good. But maybe we should define "non-profit organization" a little more precise to establish a sustainable balance.

Our (meissa team) proposal is:

  1. Community member is everyone who has has contributed over the past 3 years. Be it in concept, moderation, operation, code, translation, review or documentation.
  2. The community elects the "non-profit organization" administrator (wich may be paid). Every member having exactly one vote (democratic principle).
  3. The tasks of the "non-profit organization" are
    a. organizing transparent discussions about the roadmap,
    b. Shaping funding sustainably,
    c. Managing collected funding transparently & pay out.
  4. The community discusses and decides democratically on the roadmap.
  5. As a basis for payment, we set a uniform hourly wage - we appreciate each other equally.
I think the idea is good. But maybe we should define "non-profit organization" a little more precise to establish a sustainable balance. Our (meissa team) proposal is: 1. Community member is everyone who has has contributed over the past 3 years. Be it in concept, moderation, operation, code, translation, review or documentation. 2. The community elects the "non-profit organization" administrator (wich may be paid). Every member having exactly one vote (democratic principle). 3. The tasks of the "non-profit organization" are a. organizing transparent discussions about the roadmap, b. Shaping funding sustainably, c. Managing collected funding transparently & pay out. 4. The community discusses and decides democratically on the roadmap. 5. As a basis for payment, we set a uniform hourly wage - we appreciate each other equally.
Member
Copy link

Thank you for starting this draft @jean-daricade!
Its obvious that you put a good amount of work and thought in there.

I was wondering if it would make sense to explicitly name the federation efforts in the Non-Critical Section. I think this is a feature which singles out forgejo from other similar projects.

Disclaimer: I am working together with @jerger and the meissa team on forgejo federation.

Thank you for starting this draft @jean-daricade! Its obvious that you put a good amount of work and thought in there. I was wondering if it would make sense to explicitly name the federation efforts in the [Non-Critical Section](https://pad.gusted.xyz/aOKqNgHJSFmAbMEvo8fXKg#Non-critical). I think this is a feature which singles out forgejo from other similar projects. Disclaimer: I am working together with @jerger and the meissa team on forgejo federation.

@patdyn I thought about also asking that F3 is included in the mix. But then realized this grant application is about everything but new features / things that do not exist. Which is unusual as most other grant are only funding new things.

Once Federation & F3 are part of Forgejo, it will be in scope but for now it looks like it would be a stretch. That being said, I'd love to be wrong. There is such a need for more momentum there...

@patdyn I thought about also asking that F3 is included in the mix. But then realized this grant application is about everything but new features / things that do not exist. Which is unusual as most other grant are only funding **new** things. Once Federation & F3 are part of Forgejo, it will be in scope but for now it looks like it would be a stretch. That being said, I'd love to be wrong. There is such a need for more momentum there...
Member
Copy link

Re: Proposal section Users & Beneficiaries: One might go as far as to include the general public in the list of indirect beneficiaries. Projects like Forgejo significantly contribute to promoting community- and volunteer-based efforts on a broader scale, so in the long run, society as a whole benefits from acknowledging and supporting them. As for human rights defenders in particular, they tend to be chronically underfunded and at the same time vulnerable, so having solid, accessible tools at hand that grant independence eliminate major risks. At the same time, HRDs often come lacking technical literacy for implementation of infrastructure granting said independence, and in my experience, community support can be super helpful in this regard. I left corresponding suggestions in the doc.

From the perspective of someone with a non-technical background, I can see two critical aspects when it comes to user base and sustainability - one being maintenance and expansion of volunteer contributor base, and secondly, but linked to that, the engagement of non-traditional actors and software users. A lot of people who would benefit from Forgejo and the efforts of this community aren't even aware of its existence. I don't know what (concerted or soft) efforts to advance either aspect exist, but I'd be very curious to know more about them, as well as to support in that direction.

Re: Proposal section Users & Beneficiaries: One might go as far as to include the general public in the list of indirect beneficiaries. Projects like Forgejo significantly contribute to promoting community- and volunteer-based efforts on a broader scale, so in the long run, society as a whole benefits from acknowledging and supporting them. As for human rights defenders in particular, they tend to be chronically underfunded and at the same time vulnerable, so having solid, accessible tools at hand that grant independence eliminate major risks. At the same time, HRDs often come lacking technical literacy for implementation of infrastructure granting said independence, and in my experience, community support can be super helpful in this regard. I left corresponding suggestions in the doc. From the perspective of someone with a non-technical background, I can see two critical aspects when it comes to user base and sustainability - one being maintenance and expansion of volunteer contributor base, and secondly, but linked to that, the engagement of non-traditional actors and software users. A lot of people who would benefit from Forgejo and the efforts of this community aren't even aware of its existence. I don't know what (concerted or soft) efforts to advance either aspect exist, but I'd be very curious to know more about them, as well as to support in that direction.

One might go as far as to include the general public in the list of indirect beneficiaries.

👍 Excellent suggestion. In a world dominated by proprietary forges (GitHub & GitLab), it is worth emphasizing technological independence provided by tools that are not indirectly controlled by large US based for-profit corporations is for the benefit of all. Wording that in a good way is difficult though 😅

> One might go as far as to include the general public in the list of indirect beneficiaries. 👍 Excellent suggestion. In a world dominated by proprietary forges (GitHub & GitLab), it is worth emphasizing technological independence provided by tools that are not indirectly controlled by large US based for-profit corporations is for the benefit of all. Wording that in a good way is difficult though 😅

@n0toose it would have been better (and more coherent with how agreements were discussed) to write "if the concerns expressed by Forgejo contributors have been addressed" rather than " if all active Forgejo contributors are in agreement." The new wording is as follows:


Step one: 17 May

This grant application will only work out if the concerns expressed by Forgejo contributors have been addressed. If it is successful, it will be submitted 17 May (deadline for applications). If not, it will be withdrawn.

Step two: 1 October

After the submission and assuming it passes all roadblocks, a full proposal will be written. And again, the concerns expressed by Forgejo contributors will be addressed before it can move forward. If it is successful, it will be submitted 1 October (deadline for signing the grant). If not, it will be withdrawn.

@n0toose it would have been better (and more coherent with how agreements were discussed) to write "if the concerns expressed by Forgejo contributors have been addressed" rather than " if all active Forgejo contributors are in agreement." The new wording is as follows: --- > ## Step one: 17 May > > This grant application will only work out if the concerns expressed by Forgejo contributors have been addressed. If it is successful, it will be submitted 17 May (deadline for applications). If not, it will be withdrawn. > > ## Step two: 1 October > > After the submission and assuming it passes all roadblocks, a full proposal will be written. And again, the concerns expressed by Forgejo contributors will be addressed before it can move forward. If it is successful, it will be submitted 1 October (deadline for signing the grant). If not, it will be withdrawn.

@jerger

I think the idea is good. But maybe we should define "non-profit organization" a little more precise to establish a sustainable balance.

Our (meissa team) proposal is:

  1. Community member is everyone who has has contributed over the past 3 years. Be it in concept, moderation, operation, code, translation, review or documentation.
  2. The community elects the "non-profit organization" administrator (which may be paid). Every member having exactly one vote (democratic principle).
  3. The tasks of the "non-profit organization" are
    a. organizing transparent discussions about the roadmap,
    b. Shaping funding sustainably,
    c. Managing collected funding transparently & pay out.
  4. The community discusses and decides democratically on the roadmap.
  5. As a basis for payment, we set a uniform hourly wage - we appreciate each other equally.

This reads like a sound discussion starter to establish this non-profit governance. The timeline to layout such a non-profit could be:

  • 17 May - grant application submitted - assumes a non-profit will exist, without going into specifics
  • 17 May to 1 September - grant application is being processed by OTF with questions going back and forth - no need to go into specifics about the non-profit yet
  • 1 September - 1 October - OTF asks for a full proposal - the specifics of the non-profit are discussed and agreed upon between Forgejo community members

There is no certainty that 1 September will be the date a full proposal will be required but it is a reasonable assumption knowing the 1 October deadline is set for signing the contract. Although Forgejo seems to be a good fit, it is very difficult to guess if the application will be accepted before that date. Discussing the details of how a non-profit is established & governed is probably not worth the effort.

@jerger > I think the idea is good. But maybe we should define "non-profit organization" a little more precise to establish a sustainable balance. > > Our (meissa team) proposal is: > 1. Community member is everyone who has has contributed over the past 3 years. Be it in concept, moderation, operation, code, translation, review or documentation. > 2. The community elects the "non-profit organization" administrator (which may be paid). Every member having exactly one vote (democratic principle). > 3. The tasks of the "non-profit organization" are > a. organizing transparent discussions about the roadmap, > b. Shaping funding sustainably, > c. Managing collected funding transparently & pay out. > 4. The community discusses and decides democratically on the roadmap. > 5. As a basis for payment, we set a uniform hourly wage - we appreciate each other equally. This reads like a sound discussion starter to establish this non-profit governance. The timeline to layout such a non-profit could be: * 17 May - grant application submitted - assumes a non-profit will exist, without going into specifics * 17 May to 1 September - grant application is being processed by OTF with questions going back and forth - no need to go into specifics about the non-profit yet * 1 September - 1 October - OTF asks for a full proposal - the specifics of the non-profit are discussed and agreed upon between Forgejo community members There is no certainty that 1 September will be the date a full proposal will be required but it is a reasonable assumption knowing the 1 October deadline is set for signing the contract. Although Forgejo seems to be a good fit, it is very difficult to guess if the application will be accepted before that date. Discussing the details of how a non-profit is established & governed is probably not worth the effort.

@patdyn @earl-warren if F3 and federation are implemented and published by the date the full proposal is written, I think they both could be part of the critical areas that need attention. They both play a major role in the durability of each Forgejo instance as well as the sustainability of Forgejo as a project.

The current concept note is written without them because they are not published yet.

@patdyn @earl-warren if F3 and federation are implemented and published by the date the full proposal is written, I think they both could be part of the critical areas that need attention. They both play a major role in the durability of each Forgejo instance as well as the sustainability of Forgejo as a project. The current concept note is written without them because they are not published yet.

@avobs I assume you authored the changes to the draft that introduce the general public and I think they read well. It is a good improvement. Do not hesitate to edit more if you feel inspired.

From the perspective of someone with a non-technical background, I can see two critical aspects when it comes to user base and sustainability - one being maintenance and expansion of volunteer contributor base, and secondly, but linked to that, the engagement of non-traditional actors and software users. A lot of people who would benefit from Forgejo and the efforts of this community aren't even aware of its existence. I don't know what (concerted or soft) efforts to advance either aspect exist, but I'd be very curious to know more about them, as well as to support in that direction.

The Forgejo community is highly technical and it is very difficult to explain how critical its mission is to all indirect beneficiaries, human rights defenders included. Your perspective as a non-technical person would be priceless. There are ongoing User Research efforts led by @fnetX to better understand how software developers use Forgejo. But (as far as I know) there is no focus on how it matters to users who depend on the software developed with Forgejo.

One example would be when a group of hackers modifies the LineageOS codebase so that it can fit the needs of HRD living under an oppressive regime. There could be a number of motives to do so, such as addressing surveillance techniques deployed specifically in this region. The kind of custom modifications that would not make sense for LinegeOS to integrate into their distribution. But something that would be essential to secure their communications. The modified software would be best developed offline, preferably with inexpensive equipment and offer the ability to run the full suite of tests to ensure the generated binary does not introduce new vulnerabilities that would jeopardize the security of the users they aim to protect.

Forgejo is the only lightweight and Free Software collaborative environment they can depend on, all the other forges are either proprietary or dominated by a for-profit company.

Figuring out how to explain and communicate Forgejo to the general public will probably be made easier with an effort on "User Research" to observe its impact. And with these observations, an effort could be made to increase the adoption of Forgejo, not only for software developers but also to the general public and human right defenders.

@avobs I assume you authored the changes to the draft that introduce the general public and I think they read well. It is a good improvement. Do not hesitate to edit more if you feel inspired. > From the perspective of someone with a non-technical background, I can see two critical aspects when it comes to user base and sustainability - one being maintenance and expansion of volunteer contributor base, and secondly, but linked to that, the engagement of non-traditional actors and software users. A lot of people who would benefit from Forgejo and the efforts of this community aren't even aware of its existence. I don't know what (concerted or soft) efforts to advance either aspect exist, but I'd be very curious to know more about them, as well as to support in that direction. The Forgejo community is highly technical and it is very difficult to explain how critical its mission is to all indirect beneficiaries, human rights defenders included. Your perspective as a non-technical person would be priceless. There are ongoing User Research efforts led by @fnetX to better understand how software developers use Forgejo. But (as far as I know) there is no focus on how it matters to users who depend on the software developed with Forgejo. One example would be when a group of hackers modifies the LineageOS codebase so that it can fit the needs of HRD living under an oppressive regime. There could be a number of motives to do so, such as addressing surveillance techniques deployed specifically in this region. The kind of custom modifications that would not make sense for LinegeOS to integrate into their distribution. But something that would be essential to secure their communications. The modified software would be best developed offline, preferably with inexpensive equipment and offer the ability to run the full suite of tests to ensure the generated binary does not introduce new vulnerabilities that would jeopardize the security of the users they aim to protect. Forgejo is the only lightweight and Free Software collaborative environment they can depend on, all the other forges are either proprietary or dominated by a for-profit company. Figuring out how to explain and communicate Forgejo to the general public will probably be made easier with an effort on "User Research" to observe its impact. And with these observations, an effort could be made to increase the adoption of Forgejo, not only for software developers but also to the general public and human right defenders.

I drafted the Contributors & Community section of the proposal.

It includes the nickname of Forgejo contributors who have a history of sustained and significant contributions to Forgejo, together with a bullet list of the areas where they were active (the ones that matter in the context of the grant).

I started with paragraphs explaining your background and interests, borrowing from past grant applications in the sustainability repository. And then thought a reviewer would be more interested in something very easy to digest and verifiable (the URL to the profile is exactly that). I assume the question they want to answer is: should there be funds donated to this project, are there enough people with skills to match so that it can be spent wisely?

Given the nature of the proposal, being listed there does not necessarily mean you are going to be a beneficiary of the grant. Since it aims at balancing the power between volunteers and paid staff, it could just be that your voice will matter when deciding where the money goes.


@algernon @Gusted @fnetX @earl-warren @0ko @oliverpool @crystal @viceice @caesar @jerger @patdyn you all are in this list and I apologize in advance if you do not want to be. And I also for (at least partly) misrepresenting your activity in this very terse bullet list. Just let me know and I'll remove the entry or fix the mistakes.

  • if you are good with your entry as it is, just 👍
  • if you want it modified or removed, just say so (no need to explain, this is about you and the decision is yours alone)
I [drafted](https://pad.gusted.xyz/aOKqNgHJSFmAbMEvo8fXKg?view#Contributors-amp-Community) the Contributors & Community section of the proposal. It includes the nickname of Forgejo contributors who have a history of sustained and significant contributions to Forgejo, together with a bullet list of the areas where they were active (the ones that matter in the context of the grant). I started with paragraphs explaining your background and interests, borrowing from past grant applications in the sustainability repository. And then thought a reviewer would be more interested in something very easy to digest and verifiable (the URL to the profile is exactly that). I assume the question they want to answer is: should there be funds donated to this project, are there enough people with skills to match so that it can be spent wisely? Given the nature of the proposal, being listed there does **not necessarily mean you are going to be a beneficiary of the grant**. Since it aims at balancing the power between volunteers and paid staff, it could just be that your voice will matter when deciding where the money goes. --- @algernon @Gusted @fnetX @earl-warren @0ko @oliverpool @crystal @viceice @caesar @jerger @patdyn you all are in this list and I apologize in advance if you do not want to be. And I also for (at least partly) misrepresenting your activity in this very terse bullet list. Just let me know and I'll remove the entry or fix the mistakes. - if you are good with your entry as it is, just 👍 - if you want it modified or removed, just say so (no need to explain, this is about you and the decision is yours alone)

@avobs your non-technical view would be appreciated. Anything that is not understandable because of specialized vocabulary will also be challenging for the reviewers of the grant application.

@avobs your non-technical view would be appreciated. Anything that is not understandable because of specialized vocabulary will also be challenging for the reviewers of the grant application.

@jean-daricade I also send some PR's to improve / extend packages API. especially the nuget API. 😉 will probably do it again soon for better dependency management 🤗

@jean-daricade I also send some PR's to improve / extend packages API. especially the nuget API. 😉 will probably do it again soon for better dependency management 🤗
Owner
Copy link

Just let me know and I'll remove the entry or fix the mistakes.

It was easier to update my entry myself. 😄

> Just let me know and I'll remove the entry or fix the mistakes. It was easier to update my entry myself. 😄

@jean-daricade thank you so much for drafting this proposal, it reads very well!

My description looks fine. I don't know if a link showing more open-source contributions would be welcomed (https://code.pfad.fr/ would be mine).


Under "Critical Problem Statement", I would add something like "Test tooling":

Test tooling - Per the "Pull Request Agreement", all changes are expected to make a reasonable effort to test the change. To ease contributions of all kinds, the test suite must be easy to use and extend. This requires well thought and maintained testing tools.

I think that this is even more important than "Test coverage", because if implemented right, the test coverage will greatly increase with every contribution.

Regarding "Documentation", the tooling is also lacking:

This is an area I would be interested to work on (I have some PoC lying around), but this is an undertaking which requires a fair one-time effort and commitment for a couple of weeks.


If this grant is accepted, I think it would be interesting for this "organisation" to not call itself Forgejo (so that this remains the community project), but have a distinct name (I have some ideas 😆). This would make it clearer that all actors are part of the same environment, without special rights regarding Forgejo:

  • voluntary contributors
  • various companies proposing services or development
  • public instances (Codeberg, disroot...)
  • the "organisation" (created after the OTF fund)
@jean-daricade thank you so much for drafting this proposal, it reads very well! My description looks fine. I don't know if a link showing more open-source contributions would be welcomed (https://code.pfad.fr/ would be mine). --- Under "Critical Problem Statement", I would add something like "Test tooling": > Test tooling - Per the "Pull Request Agreement", all changes are expected to make a reasonable effort to test the change. To ease contributions of all kinds, the test suite must be easy to use and extend. This requires well thought and maintained testing tools. I think that this is even more important than "Test coverage", because if implemented right, the test coverage will greatly increase with every contribution. Regarding "Documentation", the tooling is also lacking: - proper documentation organisation (something like https://docs.divio.com/documentation-system/ would be nice) - accessible versioning (currently you have to manually change the URL) - searchbox This is an area I would be interested to work on (I have some PoC lying around), but this is an undertaking which requires a fair one-time effort and commitment for a couple of weeks. --- If this grant is accepted, I think it would be interesting for this "organisation" to not call itself Forgejo (so that this remains the community project), but have a distinct name (I have some ideas 😆). This would make it clearer that all actors are part of the same environment, without special rights regarding Forgejo: - voluntary contributors - various companies proposing services or development - public instances (Codeberg, disroot...) - the "organisation" (created after the OTF fund)

Once / if this grant application is submitted, it would be worth creating a dedicated directory in the https://codeberg.org/forgejo/sustainability/ repository for followup discussion and archiving documents.

Once / if this grant application is submitted, it would be worth creating a dedicated directory in the https://codeberg.org/forgejo/sustainability/ repository for followup discussion and archiving documents.
Member
Copy link

The Forgejo community is highly technical and it is very difficult to explain how critical its mission is to all indirect beneficiaries, human rights defenders included. Your perspective as a non-technical person would be priceless. There are ongoing User Research efforts led by @fnetX to better understand how software developers use Forgejo. But (as far as I know) there is no focus on how it matters to users who depend on the software developed with Forgejo.

(...)

Figuring out how to explain and communicate Forgejo to the general public will probably be made easier with an effort on "User Research" to observe its impact. And with these observations, an effort could be made to increase the adoption of Forgejo, not only for software developers but also to the general public and human right defenders.

I agree. Bridging that gap though is worthwhile on many levels, and in either direction. I looked at the User Research done so far by @fnetX, and it does indeed seem very technical - which is no doubt crucial, but tells you little about how to increase adoptability or the needs of individuals that would ultimately benefit from Forgejo. And in eventually doing so, increasing sustainability. To approach this issue, it would make sense to get an idea of both a) who is already active in the community and why and b) who would benefit from its efforts but currently has no access to it (and ideally how to change that). I suppose this is a matter for the actual project description, and I am more than happy to take a look once that is out.

Thank you so much, this looks like a very valuable effort to me already. I am realizing that it might be worth mentioning this broader social dimension and potential in the Problem Statement section as well, as a non-critical, rather "on the horizon" kind of factor. I am adding a point "Integration" as a suggestion.

> The Forgejo community is highly technical and it is very difficult to explain how critical its mission is to all indirect beneficiaries, human rights defenders included. Your perspective as a non-technical person would be priceless. There are ongoing User Research efforts led by @fnetX to better understand how software developers use Forgejo. But (as far as I know) there is no focus on how it matters to users who depend on the software developed with Forgejo. (...) > Figuring out how to explain and communicate Forgejo to the general public will probably be made easier with an effort on "User Research" to observe its impact. And with these observations, an effort could be made to increase the adoption of Forgejo, not only for software developers but also to the general public and human right defenders. I agree. Bridging that gap though is worthwhile on many levels, and in either direction. I looked at the User Research done so far by @fnetX, and it does indeed seem very technical - which is no doubt crucial, but tells you little about how to increase adoptability or the needs of individuals that would ultimately benefit from Forgejo. And in eventually doing so, increasing sustainability. To approach this issue, it would make sense to get an idea of both a) who is already active in the community and why and b) who would benefit from its efforts but currently has no access to it (and ideally how to change that). I suppose this is a matter for the actual project description, and I am more than happy to take a look once that is out. Thank you so much, this looks like a very valuable effort to me already. I am realizing that it might be worth mentioning this broader social dimension and potential in the Problem Statement section as well, as a non-critical, rather "on the horizon" kind of factor. I am adding a point "Integration" as a suggestion.

@jean-daricade I also send some PR's to improve / extend packages API. especially the nuget API. 😉 will probably do it again soon for better dependency management 🤗

Added the following:

  • packages API & implementation

Is that ok?

> @jean-daricade I also send some PR's to improve / extend packages API. especially the nuget API. 😉 will probably do it again soon for better dependency management 🤗 Added the following: > - packages API & implementation Is that ok?

@jean-daricade thank you so much for drafting this proposal, it reads very well!

My description looks fine. I don't know if a link showing more open-source contributions would be welcomed (https://code.pfad.fr/ would be mine).

Added the link.


Under "Critical Problem Statement", I would add something like "Test tooling":

Test tooling - Per the "Pull Request Agreement", all changes are expected to make a reasonable effort to test the change. To ease contributions of all kinds, the test suite must be easy to use and extend. This requires well thought and maintained testing tools.

I think that this is even more important than "Test coverage", because if implemented right, the test coverage will greatly increase with every contribution.

This item was reworded to be negative to fit with the rest of the section (highlight problems rather than solutions).

  • Test - insufficient tooling & coverage
    • Per the "Pull Request Agreement" https://codeberg.org/forgejo/governance/src/branch/main/PullRequestsAgreement.md, all changes are expected to make a reasonable effort to test the change. But the test suite is not easy to use and extend and it creates frictions for contributions of all kinds.
    • large parts of the codebase still lack test coverage which creates regressions, security issues and hinders contributor's abilities to participate.

Regarding "Documentation", the tooling is also lacking:

This is an area I would be interested to work on (I have some PoC lying around), but this is an undertaking which requires a fair one-time effort and commitment for a couple of weeks.

Similarly this lack of tooling was reworded as follows:

  • Documentation - content and tooling are missing
    • there are almost no tools for organisation (similar to https://docs.divio.com/documentation-system/), versioned accessibility or search.
    • the user and admin guides are only at 50% completion which leads to unnecessary roadblocks and support questions.

If this grant is accepted, I think it would be interesting for this "organisation" to not call itself Forgejo (so that this remains the community project), but have a distinct name (I have some ideas 😆). This would make it clearer that all actors are part of the same environment, without special rights regarding Forgejo:

  • voluntary contributors
  • various companies proposing services or development
  • public instances (Codeberg, disroot...)
  • the "organisation" (created after the OTF fund)

Very well put. I'm inclined to think this non-profit body / organization will need a name that conveys this rather unusual place in the Forgejo collective. Do you think there is a need to discuss and decide on this name sooner rather than later? Or is it ok to postpone that discussion to a time when the chances that the grant is accepted are high? I explained how I see the timeline in an earlier reply to @jerger and @patdyn

> @jean-daricade thank you so much for drafting this proposal, it reads very well! > > My description looks fine. I don't know if a link showing more open-source contributions would be welcomed (https://code.pfad.fr/ would be mine). > Added the link. --- > > Under "Critical Problem Statement", I would add something like "Test tooling": > > > Test tooling - Per the "Pull Request Agreement", all changes are expected to make a reasonable effort to test the change. To ease contributions of all kinds, the test suite must be easy to use and extend. This requires well thought and maintained testing tools. > > I think that this is even more important than "Test coverage", because if implemented right, the test coverage will greatly increase with every contribution. This item was reworded to be negative to fit with the rest of the section (highlight problems rather than solutions). > * Test - insufficient tooling & coverage > - Per the "Pull Request Agreement" https://codeberg.org/forgejo/governance/src/branch/main/PullRequestsAgreement.md, all changes are expected to make a reasonable effort to test the change. But the test suite is not easy to use and extend and it creates frictions for contributions of all kinds. > - large parts of the codebase still lack test coverage which creates regressions, security issues and hinders contributor's abilities to participate. > Regarding "Documentation", the tooling is also lacking: > - proper documentation organisation (something like https://docs.divio.com/documentation-system/ would be nice) > - accessible versioning (currently you have to manually change the URL) > - searchbox > > This is an area I would be interested to work on (I have some PoC lying around), but this is an undertaking which requires a fair one-time effort and commitment for a couple of weeks. Similarly this lack of tooling was reworded as follows: > > * Documentation - content and tooling are missing > - there are almost no tools for organisation (similar to https://docs.divio.com/documentation-system/), versioned accessibility or search. > - the user and admin guides are only at 50% completion which leads to unnecessary roadblocks and support questions. --- > If this grant is accepted, I think it would be interesting for this "organisation" to not call itself Forgejo (so that this remains the community project), but have a distinct name (I have some ideas 😆). This would make it clearer that all actors are part of the same environment, without special rights regarding Forgejo: > - voluntary contributors > - various companies proposing services or development > - public instances (Codeberg, disroot...) > - the "organisation" (created after the OTF fund) Very well put. I'm inclined to think this non-profit body / organization will need a name that conveys this rather unusual place in the Forgejo collective. Do you think there is a need to discuss and decide on this name sooner rather than later? Or is it ok to postpone that discussion to a time when the chances that the grant is accepted are high? I explained how I see the timeline in an earlier reply to @jerger and @patdyn

I agree. Bridging that gap though is worthwhile on many levels, and in either direction. I looked at the User Research done so far by @fnetX, and it does indeed seem very technical - which is no doubt crucial, but tells you little about how to increase adoptability or the needs of individuals that would ultimately benefit from Forgejo. And in eventually doing so, increasing sustainability. To approach this issue, it would make sense to get an idea of both a) who is already active in the community and why and b) who would benefit from its efforts but currently has no access to it (and ideally how to change that). I suppose this is a matter for the actual project description, and I am more than happy to take a look once that is out.

I'll get to this shortly. Now that there is a rather clear view of the sustainability problems and the contributors with a past interest in improving them, describing what could be done with dedicated funding should flow naturally. And if it does not, it will reveal that something is missing.

Thank you so much, this looks like a very valuable effort to me already. I am realizing that it might be worth mentioning this broader social dimension and potential in the Problem Statement section as well, as a non-critical, rather "on the horizon" kind of factor. I am adding a point "Integration" as a suggestion.

Perfect.

> I agree. Bridging that gap though is worthwhile on many levels, and in either direction. I looked at the User Research done so far by @fnetX, and it does indeed seem very technical - which is no doubt crucial, but tells you little about how to increase adoptability or the needs of individuals that would ultimately benefit from Forgejo. And in eventually doing so, increasing sustainability. To approach this issue, it would make sense to get an idea of both a) who is already active in the community and why and b) who would benefit from its efforts but currently has no access to it (and ideally how to change that). I suppose this is a matter for the actual project description, and I am more than happy to take a look once that is out. I'll get to this shortly. Now that there is a rather clear view of the sustainability problems and the contributors with a past interest in improving them, describing what could be done with dedicated funding should flow naturally. And if it does not, it will reveal that something is missing. > Thank you so much, this looks like a very valuable effort to me already. I am realizing that it might be worth mentioning this broader social dimension and potential in the Problem Statement section as well, as a non-critical, rather "on the horizon" kind of factor. I am adding a point "Integration" as a suggestion. Perfect.

image

Removed the (pending) for each of the above contributors because they 👍 the comment.

![image](/attachments/695ce3dd-227e-4881-8dd1-e81cdc6529e4) Removed the **(pending)** for each of the above contributors because they 👍 [the comment](https://codeberg.org/forgejo/discussions/issues/144#issuecomment-1808664).
6.4 KiB
Member
Copy link

Very well put. I'm inclined to think this non-profit body / organization will need a name that conveys this rather unusual place in the Forgejo collective. Do you think there is a need to discuss and decide on this name sooner rather than later? Or is it ok to postpone that discussion to a time when the chances that the grant is accepted are high? I explained how I see the timeline in an earlier reply to @jerger and @patdyn

I think having a name in place earlier might just ease communication about the organization later on.
Also, considering that finding a name without time pressure could yield more acceptance among contributors.
That is, having the possibility to discuss and rethink among a broader audience.

Edit: An extra discussion thread would make sense for this, I think.

> Very well put. I'm inclined to think this non-profit body / organization will need a name that conveys this rather unusual place in the Forgejo collective. Do you think there is a need to discuss and decide on this name sooner rather than later? Or is it ok to postpone that discussion to a time when the chances that the grant is accepted are high? I explained how I see the timeline in an earlier reply to @jerger and @patdyn I think having a name in place earlier might just ease communication about the organization later on. Also, considering that finding a name without time pressure could yield more acceptance among contributors. That is, having the possibility to discuss and rethink among a broader audience. Edit: An extra discussion thread would make sense for this, I think.

is it ok to also add a link to my GitHub account? I'll do a lot there too. 🤔

especially for renovate which is used for dependency management

is it ok to also add a link to my GitHub account? I'll do a lot there too. 🤔 especially for renovate which is used for dependency management

@n0toose I may have underestimated your involvement, would you like to be added to the "Contributors & Community" as someone with "a history of sustained and significant contributions to Forgejo"?

@n0toose I may have underestimated your involvement, would you like to be added to the "Contributors & Community" as someone with "a history of sustained and significant contributions to Forgejo"?

Pinged in the development chatroom.

@Gusted @crystal @caesar @algernon do you agree to be listed as a Forgejo contributor in the draft grant application? It is very early stage and you will have every opportunity to distance yourself at a later time. I think the current draft is in line with the spirit of your participation in Forgejo and how it has evolved. If anything does not feel right, please say so and it will be amended.

My hope is to reach a stage where you feel it is going in the right direction.

Pinged [in the development chatroom](https://matrix.to/#/!zpNKWqkiEOyljSMQDK:matrix.org/4ドルjVb8nwa3xpU1rXEURD6I9R7hW90MugEf9N5Y4QNx40?via=schinas.net&via=matrix.org&via=envs.net). > @Gusted @crystal @caesar @algernon do you agree to be listed [as a Forgejo contributor](https://pad.gusted.xyz/aOKqNgHJSFmAbMEvo8fXKg?view#Contributors-amp-Community) in the draft grant application? It is very early stage and you will have every opportunity to distance yourself at a later time. I think the current draft is in line with the spirit of your participation in Forgejo and how it has evolved. If anything does not feel right, please say so and it will be amended. > > My hope is to reach a stage where you feel it is going in the right direction.

@avobs the draft is complete and ready for a first review. I cannot emphasize enough how valuable a non-technical person is in this context 🙏 Feel free to edit without asking for minor changes / rewording. I stand ready to answer any questions you may have to clarify the jargon or to discuss a different approach if a section does not read well.

There is room for additional content in most sections but two of them need trimming because they exceed the maximum number of word allowed.

@avobs the draft is complete and ready for a first review. I cannot emphasize enough how valuable a non-technical person is in this context 🙏 Feel free to edit without asking for minor changes / rewording. I stand ready to answer any questions you may have to clarify the jargon or to discuss a different approach if a section does not read well. There is room for additional content in most sections but two of them need trimming because they exceed the maximum number of word allowed.
Member
Copy link

@jean-daricade thanks so much for your work on this. I have read through the grant proposal and it seems excellent, I have no changes to suggest really. I corrected a few typos. Yes, I am happy to be included.

I notice your own name is not on the list, yet you have clearly invested a great deal of time and effort in preparing the grant proposal. For clarity, how do you plan to be involved?

One question I do have: Is it actually necessary to create a new organisation to manage this funding if it is approved? Couldn't it go through Codeberg, if they are willing and able to handle it?

@jean-daricade thanks so much for your work on this. I have read through the grant proposal and it seems excellent, I have no changes to suggest really. I corrected a few typos. Yes, I am happy to be included. I notice your own name is not on the list, yet you have clearly invested a great deal of time and effort in preparing the grant proposal. For clarity, how do you plan to be involved? One question I do have: Is it actually necessary to create a new organisation to manage this funding if it is approved? Couldn't it go through Codeberg, if they are willing and able to handle it?

Yes, I am happy to be included.

Great. I see you fixed a number of typos 🙏

I notice your own name is not on the list, yet you have clearly invested a great deal of time and effort in preparing the grant proposal. For clarity, how do you plan to be involved?

All profiles in the list have a history of sustained and significant contributions to Forgejo but https://codeberg.org/jean-daricade (as well as other people currently active in Forgejo and doing excellent work) lack one of those two qualities.

I could be involved in defining and implementing the fundraising strategy as well as defining the roadmap and updating it. My preference would be to do that as a volunteer paired with someone paid for their work. Based on the past Forgejo history, these two activities (fundraising & roadmap) lack momentum because nobody stepped in, yet.

One question I do have: Is it actually necessary to create a new organisation to manage this funding if it is approved? Couldn't it go through Codeberg, if they are willing and able to handle it?

@fnetX will be better able to comment on that. My understanding is that Codeberg is not a good fit because:

  • Its mission is to operate Codeberg.org, a large scale Forgejo instance, rather than developing Forgejo itself. Although they are closely related, the goals are very different. For instance providing quality releases for the general public is secondary to Codeberg's mission. But it is essential to the Forgejo project itself.
  • The level of transparency currently expected in Forgejo governance would require significant changes in how Codeberg operates.
  • Codeberg decisions are independent of Forgejo's contributors and they would not have a say in how the funds are used.

I draw those conclusions from what is available in the sustainability repository, on the NLnet grant in particular. Codeberg received 30,000€ from that grant and it seems that a large part of it will be/has been spent on funding @algernon work (who published a publicly available log of their work). It demonstrates that Codeberg is:

  • able to recruit skilled developers
  • can be trusted to put the money to good use for the benefit of Forgejo
  • manages the administrative part of the transaction without weighing on the Forgejo community

and it also suggests that:

  • the Forgejo contributors are not consulted on these decisions
  • the details of the transactions, discussions and decisions are not available to Forgejo contributors
> Yes, I am happy to be included. Great. I see you fixed a number of typos 🙏 > I notice your own name is not on the list, yet you have clearly invested a great deal of time and effort in preparing the grant proposal. For clarity, how do you plan to be involved? All profiles in the list have a history of sustained and significant contributions to Forgejo but https://codeberg.org/jean-daricade (as well as other people currently active in Forgejo and doing excellent work) lack one of those two qualities. I could be involved in defining and implementing the fundraising strategy as well as defining the roadmap and updating it. My preference would be to do that as a volunteer paired with someone paid for their work. Based on the past Forgejo history, these two activities (fundraising & roadmap) lack momentum because nobody stepped in, yet. > One question I do have: Is it actually necessary to create a new organisation to manage this funding if it is approved? Couldn't it go through Codeberg, if they are willing and able to handle it? @fnetX will be better able to comment on that. My understanding is that Codeberg is not a good fit because: * Its mission is to operate Codeberg.org, a large scale Forgejo instance, rather than developing Forgejo itself. Although they are closely related, the goals are very different. For instance providing quality releases for the general public is secondary to Codeberg's mission. But it is essential to the Forgejo project itself. * The level of transparency currently expected in Forgejo governance would require significant changes in how Codeberg operates. * Codeberg decisions are independent of Forgejo's contributors and they would not have a say in how the funds are used. I draw those conclusions from what is available in the sustainability repository, on the NLnet grant in particular. Codeberg received 30,000€ from that grant and it seems that a large part of it will be/has been spent on funding @algernon work (who published a publicly available log of their work). It demonstrates that Codeberg is: - able to recruit skilled developers - can be trusted to put the money to good use for the benefit of Forgejo - manages the administrative part of the transaction without weighing on the Forgejo community and it also suggests that: - the Forgejo contributors are not consulted on these decisions - the details of the transactions, discussions and decisions are not available to Forgejo contributors

Apologies for the late reply! I nudged the 👍 reaction above, but would like to thank you @jean-daricade for the excellent work so far!

Apologies for the late reply! I nudged the 👍 reaction above, but would like to thank you @jean-daricade for the excellent work so far!
Member
Copy link

@avobs the draft is complete and ready for a first review. I cannot emphasize enough how valuable a non-technical person is in this context 🙏 Feel free to edit without asking for minor changes / rewording. I stand ready to answer any questions you may have to clarify the jargon or to discuss a different approach if a section does not read well.

There is room for additional content in most sections but two of them need trimming because they exceed the maximum number of word allowed.

@jean-daricade I went over this, and made some minor adjustments. This is a really fine proposal, and would make for a terrific project if accepted - especially since the community spirit is well reflected. If only more of this world would function in the same way. Admirable :)

In terms of jargon, I don't understand the localization aspect mentioned throughout, but I'm sure it makes sense; plus I guess OTF will know what to do with it.

The sustainability section mentions definition and implementation of a long term funding strategy, and that relying on grants may not be the right way to achieve this. Maybe this should briefly (I understand the section is already too long) reflect on what alternatives the community has already been considering, such as donations or professional services (provided they are still relevant), to give additional substance to a thought funders usually tend to be interested in.

The activities in the project section should include a project review after some time, to adjust the strategy, if necessary. I made a suggestion in Q3/Q4.

The User and Beneficiaries section is rather short, which on some level makes sense since part of the project aims at better understanding and expanding the user and beneficiary base (and what an interesting exploration that would make!). I left a paragraph to establish that link at the bottom of the section, and might ponder on the public interest aspect a bit more. In general, the User Research mentioned throughout the proposal is not clear to me in terms of direction and scope. If there exist more concrete plans on what that should look like, it's worthwhile including them; but if not there is always time and opportunity to expand on this in the more detailed proposal.

> @avobs the draft is complete and ready for a first review. I cannot emphasize enough how valuable a non-technical person is in this context 🙏 Feel free to edit without asking for minor changes / rewording. I stand ready to answer any questions you may have to clarify the jargon or to discuss a different approach if a section does not read well. > > There is room for additional content in most sections but two of them need trimming because they exceed the maximum number of word allowed. @jean-daricade I went over this, and made some minor adjustments. This is a really fine proposal, and would make for a terrific project if accepted - especially since the community spirit is well reflected. If only more of this world would function in the same way. Admirable :) In terms of jargon, I don't understand the localization aspect mentioned throughout, but I'm sure it makes sense; plus I guess OTF will know what to do with it. The sustainability section mentions definition and implementation of a long term funding strategy, and that relying on grants may not be the right way to achieve this. Maybe this should briefly (I understand the section is already too long) reflect on what alternatives the community has already been considering, such as donations or professional services (provided they are still relevant), to give additional substance to a thought funders usually tend to be interested in. The activities in the project section should include a project review after some time, to adjust the strategy, if necessary. I made a suggestion in Q3/Q4. The User and Beneficiaries section is rather short, which on some level makes sense since part of the project aims at better understanding and expanding the user and beneficiary base (and what an interesting exploration that would make!). I left a paragraph to establish that link at the bottom of the section, and might ponder on the public interest aspect a bit more. In general, the User Research mentioned throughout the proposal is not clear to me in terms of direction and scope. If there exist more concrete plans on what that should look like, it's worthwhile including them; but if not there is always time and opportunity to expand on this in the more detailed proposal.

In terms of jargon, I don't understand the localization aspect mentioned throughout, but I'm sure it makes sense; plus I guess OTF will know what to do with it.

I'm curious about what is difficult to understand. I would have thought localization is the less challenging part. OTF funds https://localizationlab.com/ and if the grant is accepted will facilitate working with them to grow the community already working at https://translate.codeberg.org/projects/forgejo/forgejo/.

> In terms of jargon, I don't understand the localization aspect mentioned throughout, but I'm sure it makes sense; plus I guess OTF will know what to do with it. I'm curious about what is difficult to understand. I would have thought localization is the less challenging part. OTF funds https://localizationlab.com/ and if the grant is accepted will facilitate working with them to grow the community already working at https://translate.codeberg.org/projects/forgejo/forgejo/.

The sustainability section mentions definition and implementation of a long term funding strategy, and that relying on grants may not be the right way to achieve this. Maybe this should briefly (I understand the section is already too long) reflect on what alternatives the community has already been considering, such as donations or professional services (provided they are still relevant), to give additional substance to a thought funders usually tend to be interested in.

Good point. The following was added (the whole section can be trimmed to fit the word count constraints later):

Past discussions suggests that the following funding sources are likely to be well received:

  • Grants from government bodies (Europe, USA, ...)
  • Anonymous donations from individuals or organizations
  • Employee delegation

And others met significant resistance:

  • Donations on condition that a brand is advertised on the project pages
  • Donations on condition that a crypto based technology is used and promoted
  • Forgejo becoming a service provider (directly or indirectly)
> The sustainability section mentions definition and implementation of a long term funding strategy, and that relying on grants may not be the right way to achieve this. Maybe this should briefly (I understand the section is already too long) reflect on what alternatives the community has already been considering, such as donations or professional services (provided they are still relevant), to give additional substance to a thought funders usually tend to be interested in. Good point. The following was added (the whole section can be trimmed to fit the word count constraints later): > Past discussions suggests that the following funding sources are likely to be well received: > > - Grants from government bodies (Europe, USA, ...) > - Anonymous donations from individuals or organizations > - Employee delegation > > And others met significant resistance: > > - Donations on condition that a brand is advertised on the project pages > - Donations on condition that a crypto based technology is used and promoted > - Forgejo becoming a service provider (directly or indirectly)

The User and Beneficiaries section is rather short, which on some level makes sense since part of the project aims at better understanding and expanding the user and beneficiary base (and what an interesting exploration that would make!). I left a paragraph to establish that link at the bottom of the section, and might ponder on the public interest aspect a bit more.

Agreed. It is a good addition.

In general, the User Research mentioned throughout the proposal is not clear to me in terms of direction and scope. If there exist more concrete plans on what that should look like, it's worthwhile including them; but if not there is always time and opportunity to expand on this in the more detailed proposal.

A Beg­inner’s Guide to Finding User Needs is cited as a source of knowledge in https://codeberg.org/forgejo/user-research and in numerous discussions. Maybe it would be worth quoting the most enlightening parts to explain why and how Forgejo could apply the methods it contains.

It is a part of the software development process that is still mostly unknown to both users and developers, which is a problem in itself. I can imagine two situations:

  • the reviewer of the proposal knows about User Research and its benefits already and the mere fact that it is mentioned as it is, with no further details is a significant bonus point for the grant application.
  • the reviewer of the proposal has never heard of User Research and no amount of explaining in the proposal can make them understand how crucial it is for sustainability.

This is why I thought best to keep it terse. But maybe there is a middle ground to be found, with a little more explaining.

> The User and Beneficiaries section is rather short, which on some level makes sense since part of the project aims at better understanding and expanding the user and beneficiary base (and what an interesting exploration that would make!). I left a paragraph to establish that link at the bottom of the section, and might ponder on the public interest aspect a bit more. Agreed. It is a good addition. > In general, the User Research mentioned throughout the proposal is not clear to me in terms of direction and scope. If there exist more concrete plans on what that should look like, it's worthwhile including them; but if not there is always time and opportunity to expand on this in the more detailed proposal. [A Beg­inner’s Guide to Finding User Needs](https://jdittrich.github.io/userNeedResearchBook/) is cited as a source of knowledge in https://codeberg.org/forgejo/user-research and in numerous discussions. Maybe it would be worth quoting the most enlightening parts to explain why and how Forgejo could apply the methods it contains. It is a part of the software development process that is still mostly unknown to both users and developers, which is a problem in itself. I can imagine two situations: * the reviewer of the proposal knows about User Research and its benefits already and the mere fact that it is mentioned as it is, with no further details is a significant bonus point for the grant application. * the reviewer of the proposal has never heard of User Research and no amount of explaining in the proposal can make them understand how crucial it is for sustainability. This is why I thought best to keep it terse. But maybe there is a middle ground to be found, with a little more explaining.

Once / if this grant application is submitted, it would be worth creating a dedicated directory in the https://codeberg.org/forgejo/sustainability/ repository for followup discussion and archiving documents.

Here it is forgejo/sustainability#45

> Once / if this grant application is submitted, it would be worth creating a dedicated directory in the https://codeberg.org/forgejo/sustainability/ repository for followup discussion and archiving documents. Here it is https://codeberg.org/forgejo/sustainability/pulls/45
Member
Copy link

In terms of jargon, I don't understand the localization aspect mentioned throughout, but I'm sure it makes sense; plus I guess OTF will know what to do with it.

I'm curious about what is difficult to understand. I would have thought localization is the less challenging part. OTF funds https://localizationlab.com/ and if the grant is accepted will facilitate working with them to grow the community already working at https://translate.codeberg.org/projects/forgejo/forgejo/.

I was just unfamiliar with the terminology, it's clear now thank you :D

> > In terms of jargon, I don't understand the localization aspect mentioned throughout, but I'm sure it makes sense; plus I guess OTF will know what to do with it. > > I'm curious about what is difficult to understand. I would have thought localization is the less challenging part. OTF funds https://localizationlab.com/ and if the grant is accepted will facilitate working with them to grow the community already working at https://translate.codeberg.org/projects/forgejo/forgejo/. > I was just unfamiliar with the terminology, it's clear now thank you :D
Member
Copy link

The User and Beneficiaries section is rather short, which on some level makes sense since part of the project aims at better understanding and expanding the user and beneficiary base (and what an interesting exploration that would make!). I left a paragraph to establish that link at the bottom of the section, and might ponder on the public interest aspect a bit more.

Agreed. It is a good addition.

In general, the User Research mentioned throughout the proposal is not clear to me in terms of direction and scope. If there exist more concrete plans on what that should look like, it's worthwhile including them; but if not there is always time and opportunity to expand on this in the more detailed proposal.

A Beg­inner’s Guide to Finding User Needs is cited as a source of knowledge in https://codeberg.org/forgejo/user-research and in numerous discussions. Maybe it would be worth quoting the most enlightening parts to explain why and how Forgejo could apply the methods it contains.

It is a part of the software development process that is still mostly unknown to both users and developers, which is a problem in itself. I can imagine two situations:

  • the reviewer of the proposal knows about User Research and its benefits already and the mere fact that it is mentioned as it is, with no further details is a significant bonus point for the grant application.
  • the reviewer of the proposal has never heard of User Research and no amount of explaining in the proposal can make them understand how crucial it is for sustainability.

This is why I thought best to keep it terse. But maybe there is a middle ground to be found, with a little more explaining.

So for the intents and purposes of this proposal, I suppose it can be left as is then; if necessary, the issue can still be treated more in depth in the second phase of the application.

@jean-daricade I went over the proposal again and don't think I'd have much to add at this point, it looks really good, thorough and comprehensive. The only thing would be that the decision making process is referenced aplenty, but I didn't see it linked anywhere. Since it would ultimately also guide the governance of this grant, I added it in the Community section. Happy to give it another read once it's been cut down to final word counts.

> > The User and Beneficiaries section is rather short, which on some level makes sense since part of the project aims at better understanding and expanding the user and beneficiary base (and what an interesting exploration that would make!). I left a paragraph to establish that link at the bottom of the section, and might ponder on the public interest aspect a bit more. > > Agreed. It is a good addition. > > > In general, the User Research mentioned throughout the proposal is not clear to me in terms of direction and scope. If there exist more concrete plans on what that should look like, it's worthwhile including them; but if not there is always time and opportunity to expand on this in the more detailed proposal. > > [A Beg­inner’s Guide to Finding User Needs](https://jdittrich.github.io/userNeedResearchBook/) is cited as a source of knowledge in https://codeberg.org/forgejo/user-research and in numerous discussions. Maybe it would be worth quoting the most enlightening parts to explain why and how Forgejo could apply the methods it contains. > > It is a part of the software development process that is still mostly unknown to both users and developers, which is a problem in itself. I can imagine two situations: > > * the reviewer of the proposal knows about User Research and its benefits already and the mere fact that it is mentioned as it is, with no further details is a significant bonus point for the grant application. > * the reviewer of the proposal has never heard of User Research and no amount of explaining in the proposal can make them understand how crucial it is for sustainability. > > This is why I thought best to keep it terse. But maybe there is a middle ground to be found, with a little more explaining. So for the intents and purposes of this proposal, I suppose it can be left as is then; if necessary, the issue can still be treated more in depth in the second phase of the application. @jean-daricade I went over the proposal again and don't think I'd have much to add at this point, it looks really good, thorough and comprehensive. The only thing would be that the [decision making process](https://codeberg.org/forgejo/governance/src/branch/main/DECISION-MAKING.md) is referenced aplenty, but I didn't see it linked anywhere. Since it would ultimately also guide the governance of this grant, I added it in the Community section. Happy to give it another read once it's been cut down to final word counts.
Member
Copy link

I want to vote again for adding "federation" as a critical goal. Federation is related to Data Portability and Community Building - wich are part of critical goal already.

But the main Argument is: For achieving the Beneficiaries "support human rights" & "promoting independent community exchange" federation is "the" key feature. Without federation we will have many, small & distributed communities around each single forge instance. Only federation will form one common community able to collaborate across all these instances.

I want to vote again for adding "federation" as a critical goal. Federation is related to Data Portability and Community Building - wich are part of critical goal already. But the main Argument is: For achieving the Beneficiaries "support human rights" & "promoting independent community exchange" federation is "the" key feature. Without federation we will have many, small & distributed communities around each single forge instance. Only federation will form one common community able to collaborate across all these instances.

I want to vote again for adding "federation" as a critical goal.

This would need to be added to:

Problem Statement: Provide a brief explanation of the sustainability problems your FOSS project is facing, and briefly mention the problems being addressed, at both technical and non-technical levels. Highlight which ones are critical and non-critical.

In a way that states how it currently is a sustainability problem. For instance:

  • Recruiting contributors - new users generate a workload that grows faster than the ability of new contributors to resolve them.

How would you phrase that for federation?

  • Federating instances - ...
> I want to vote again for adding "federation" as a critical goal. This would need to be added to: > Problem Statement: Provide a brief explanation of the sustainability problems your FOSS project is facing, and briefly mention the problems being addressed, at both technical and non-technical levels. Highlight which ones are critical and non-critical. In a way that states how it currently is a sustainability problem. For instance: > * Recruiting contributors - new users generate a workload that grows faster than the ability of new contributors to resolve them. How would you phrase that for federation? > * Federating instances - ...
Member
Copy link
I tried a phrase here: https://codeberg.org/forgejo/sustainability/pulls/45/files#issuecomment-1827752

Can we have a google meet at this topic?

Can we have a google meet at this topic?

Before that happens it is best to contribute something substantial to Forgejo. It will be an opportunity for you to get to know the project and figure out how the sustainability problem can be addressed.

Before that happens it is best to contribute something substantial to Forgejo. It will be an opportunity for you to get to know the project and figure out how the sustainability problem can be addressed.
Sign in to join this conversation.
No Branch/Tag specified
No results found.
No results found.
Labels
Clear labels
User research - Accessibility
Requires input about accessibility features, likely involves user testing.
User research - Blocked
Do not pick as-is! We are happy if you can help, but please coordinate with ongoing redesign in this area.
User research - Community
Community features, such as discovering other people's work or otherwise feeling welcome on a Forgejo instance.
User research - Config (instance)
Instance-wide configuration, authentication and other admin-only needs.
User research - Errors
How to deal with errors in the application and write helpful error messages.
User research - Filters
How filter and search is being worked with.
User research - Future backlog
The issue might be inspiring for future design work.
User research - Git workflow
AGit, fork-based and new Git workflow, PR creation etc
User research - Labels
Active research about Labels
User research - Moderation
Moderation Featuers for Admins are undergoing active User Research
User research - Needs input
Use this label to let the User Research team know their input is requested.
User research - Notifications/Dashboard
Research on how users should know what to do next.
User research - Rendering
Text rendering, markup languages etc
User research - Repo creation
Active research about the New Repo dialog.
User research - Repo units
The repo sections, disabling them and the "Add more" button.
User research - Security
User research - Settings (in-app)
How to structure in-app settings in the future?
Milestone
Clear milestone
No items
No milestone
Projects
Clear projects
No items
No project
Assignees
Clear assignees
No assignees
15 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Reference
forgejo/discussions#144
Reference in a new issue
forgejo/discussions
No description provided.
Delete branch "%!s()"

Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?