# Grants Org Proposal 2024
> Note: this is a V2 after feedback on the [proposal here](https://community.radworks.org/t/formal-review-rgp-20-grants-org-proposal-2024/3419/1).
# Purpose
The purpose of this proposal is to elevate the scope of _Grants_ as the main body that manages the technical funding behind Radworks’s broader mission:
> _Radworks_ is a community dedicated to cultivating internet freedom. In a world that almost entirely relies on software, maintaining the resilience and health of the free and open source ecosystem is more important than ever. We strive to demonstrate the viability — in cost, labor, quality, and resiliency — of open-source software and its development. ([1](https://docs.radworks.org/))
The **Radworks Grant Org**'s (_Grants_) *goal is to fund development that enhances, expands, and enriches the Radworks ecosystem.* This includes Radworks-specific third-party integrations, tooling, and alternative interfaces, as well as mission-aligned free and open-source projects.
Our Grants budget is **250,000 USDC**.
60% (150K) of the Grants budget is allocated to Integrations & Tooling Team, and the remaining 40% (100K) is for new grantees with a focus on new grantees that contribute to the Drips and Radicle ecosystem.
![image|690x388](upload://mXElEf4tRCYBAP7zlgaaPoP6QxE.png)
For more on Teams, read below.
## What's a Team?
The initial grants program was proposed with the mandated to "collect, assess, approve, and fund solutions to problems within the Radicle ecosystem."
Since then, what was known as the "Radicle" ecosystem has expanded to encompass two separate core technologies, Radicle and Drips, with core development for each being coordinated by the Radicle Org and Drips Org repsectively.
In 2024, each Org's focus is to find adoption/product-market fit (see [Radicle MOU](https://community.radworks.org/t/mou-radworks-radicle-org/3408) and [Drips MOU](https://community.radworks.org/t/mou-radworks-drips-org/3411)). The Grants Org will supplement the efforts of the core development orgs by providing continuous funding to ecosystem **teams**. These are:
- Teams that have completed > 3 grants
- Contributing integrations, tooling, and/or alternative interfaces that demonstratively contribute to the goals and objectives of an Org
Teams are a critical part of any free and open source ecosystem. They encourage client & development diversity, which increases resiliency and fosters innovation through the introduction of varied perspectives and skill sets. This diversity not only enhances the adaptability of projects to changing technologies and user needs but also promotes adoption of technologies across different user segments and communities.
### What's the difference between a team and a grantee?
Grantees apply to the Grants Org for funding based on milestones. Teams are grantees that have already successfully delivered > 3 grants and are now contributing directly to the goals & objectives of a Radworks Org. Teams have:
1) More trust. They are still required to submit applications for funding, but on a quarterly basis vs. milestone-by-milestone.
2) More agency. Teams have control over their roadmap and can adapt their work to best fit the needs of the Org they are developing on/for.
3) More responsibility. Teams are expected to report to the Radworks community in the same fashion that Orgs do.
**Why the distinction?**
![image|690x388](upload://tUU6EM1Vj1nVSiQupdmzthczS6P.png)
The main goal of maintaining an ecosystem grants program is to attract & onboard contributors to the Radworks ecosystem. While milestone-based grants are a great way to engage and manage new contributors, we believe that progressively allocating more trust, agency, and capital to continuously funded teams is key to fostering longer-term contributions, which are inherently more beneficial for the ecosystem. This approach recognizes that the value of contributors grows over time as they gain deeper understanding and commitment to the project. Additionally, longer-term funding allows teams to engage in more productive and innovative work, as it provides a stable foundation for them to build upon, plan ahead, and execute more complex and impactful initiatives. Such sustained engagement not only accelerates the ecosystem's growth but also ensures a higher quality and continuity in the development process.
# Teams
## Radicle Developer Tooling
The Radicle Developer Tooling team is currently the only team funded by the Grants Org. The team emerged from the long-standing relationship with @Yorgos’s team – a community contributor who has worked on previous grants, such as IDE plug-ins for VSCode and JetBrains. Their focus has and will continue to be on integrating Radicle with external developer tools. The main goal is to lower friction for developers who want to integrate Radicle into their existing workflows which supports easier user onboarding (i.e. quicker adoption) as well as user retention.
The plans below are tentative, however, there are cases where any of these projects might be dropped in favor of more urgent ones. For example, in cases where we are onboarding a community, they may be blocked by some missing feature. The team will move plans around accordingly to help in these cases.
### Roadmap
A key focus in the first half of 2024 will be to continue supporting ongoing development of IDE Plugins and Migration Tooling.
For the second half of 2024, we will be focused on user-driven development. With the launch of Radicle v1.0, we expect there to be issues, feature requests, and other input from our community of users to drive development by the team.
#### IDE Plugins
> 🧪 Hypothesis: IDE plug-ins with the most popular IDEs will help developers feel more comfortable integrating their existing workflows into the Radicle ecosystem. This will help with user onboarding.
IDEs are where most developers start writing their code and locally, where they do most of their organization of work. It is crucial to have plug-ins with the most popular IDEs so that developers feel comfortable integrating their existing workflows into the Radicle ecosystem. Without this, Radicle becomes a tough sell.
Success Criteria:
* Work with issues and patches within IDE
* Integration with Radicle 1.0 across JetBrains and VSCode plug-ins
Stretch Goal:
* Look into [Neovim](https://neovim.io/) plugin (Cloudhead proposal)
Estimates:
* IntelliJ: 5-6 months, 80K USDC
* VSCode: 6-9 months, 155K USDC
We have already funded work on plugins for the 2 most popular IDEs ([VS Code, Jetbrains IDEs](https://community.radworks.org/t/radicle-ide-plugins-vs-code-jetbrains-ide-october-december-2023/3393)).
The IDE plugins already offer comparable functionality to the web interface (in the Jetbrains IDE, there is even support for inline comments for more complete code reviews, which is not yet available on the web interface), and in 2024 the aim is to complete the "1.0" release of both plugins.
> ✅ V1.0 dependency: this project does not have any significant dependency on Radicle v1.0
#### Planning Boards
> 🧪 Hypothesis: Planning boards will help teams better facilitate work. The existence of planning boards will help with user adoption by showing potential users that more of their workflows can be supported within Radicle. And this should also help with user retention by keeping users plugged into Radicle across the lifecycle of their projects.
One of the missing features that has been highlighted by every single team that is has moved their daily workflow to Radicle is some kind of board view of their backlog items, so the team can better plan their work and roadmap.
This has been highlighted by:
- @zlatan by the Radicle Heartwood team,
- @daniel from the Radicle Web UI team and
- ... our own team, as that has been something we have still not been able to migrate to Radicle from GitHub, as [explained here in more detail](https://community.radworks.org/t/radicle-ide-plugins-vs-code-jetbrains-ide-july-september-2023/3346/5).
As this is not on the Web team's priorities / roadmap for 2024, an early prototype has been developed, as a kind of proof-of-concept of how we could independently work on a separate web app that could be integrated as part of the web interface and offer this missing functionality.
The prototype is [available here](https://guileless-puppy-2d91b5.netlify.app/nodes/radicle.yorgos.net.gr/rad:z2BdUVZFvHdxRfdtGJQdSH2kyXNM6/board). More info and stakeholder feedback on [zulip](https://radicle.zulipchat.com/#narrow/stream/380896-integrations/topic/.E2.9C.A8.20showcase/near/408192130).
Success Criteria:
- The 3 blocked teams can move their roadmap planning to Radicle.
Estimates:
- 6-9 months
- 180K USDC
#### Migration Tooling
> 🧪 Hypothesis: Migration tools will lower the overhead involved in migrating to Radicle. This should help with user acquisition.
Migrating an entire project from somewhere like GitHub introduces a significant hurdle. By creating migration tools, we can lower the overhead and make it that much easier for teams to migrate their projects. Without this, the task is daunting and may be too high a hurdle to convince teams to switch tooling to Radicle.
Success Criteria:
* Migration tool for [Github](https://github.com/)
* Migration tool for [Gitlab](https://about.gitlab.com/)
Stretch Goal:
* Migration tool for [Gitea](https://about.gitea.com/)
Estimates
* 4-5 months
* 95K USDC
> We have already funded basic research and development for [GitHub issues](https://community.radworks.org/t/migrate-to-radicle-tooling-github-issues/3343).
> ✅ V1.0 dependency: this project does not have any significant dependency on Radicle v1.0
#### CI Integrations
> 🧪 Hypothesis: CI integrations will ensure that Radicle can handle developers' end-to-end workflow without needing to continue relying on other tooling. This should help with user acquisition and user retention.
Continuous Integration (CI) is the go-to paradigm for ensuring that code is properly tested, verified, and built. By adding CI tooling, we will ensure that one of the most important steps in software development workflows is integrated with Radicle. Without this, migrating to Radicle is a harder sale.
Success Criteria:
* [Jenkins](https://www.jenkins.io/)
* [Dependabot](https://github.com/dependabot)
* [Quay.io](https://quay.io/) (Artifactory)
Estimates
* 5-6 months
* 95K USDC
> We have already funded basic research and development for [CI integrations](https://community.radworks.org/t/radicle-ci-integrations/3394/3).
> 🚨 V1.0 dependency: this project does have a significant dependency on Radicle v1.0. Thus, we have listed it last. There may be nominal work in the beginning of the year, however, if there are any delays with v1.0, this project can and will be pushed out later.
#### IM Integrations
> 🧪 Hypothesis: Integrating with IMs – with features like notifications on new Patches, comments, and @mentions – will allow teams to stay in-synch more easily. This should help with both user acquisition and user retention.
Instant messaging tools are where developers spend most of their time collaborating in real-time, especially in remote, asynchronous teams. Whether they are open source tools like Zulip, or closed-source like Slack and Discord, they serve this same purpose. Integrating with IMs – with features like notifications on new Patches, comments, and @mentions – will allow teams to stay in-synch more easily. Without this, teams will continue having more friction staying on top of updates in their Radicle repositories.
Success Criteria:
* Integrate with Zulip and dog-food
* Integrate with Slack/Discord
Estimates
* 6-8 weeks
* 30K USDC
> ✅ V1.0 dependency: this project does not have any significant dependency on Radicle v1.0
### Budget
The total budget for roadmap outlined above is estimated at 250,000 USDC.
The Integrations & Tooling Team (Yorgos, et al) consists of 4 full-time, including 2 senior developers, and 3 part-time members. Comparing to our Core teams, this is roughly 3/5 the size, for 1/3 the cost. Comparing to industry, it is also a very reasonable (source: [levels.fyi](https://www.levels.fyi/t/software-engineer?countryId=254)), where the budget would likely range between 650-750K. Apart from team wages, the budget also includes 25K USDC of yearly operational costs and 20K USDC to fund the team's participation in Radicle offsites.
### Reporting
The Grants Committee will oversee the progress of the Integrations & Tooling Team. The team will be required to:
* Submit quarterly applications that outline specific milestones and updates on current progress
* Receive quarterly approval from the Grants committee for continued funding
* Participate in the reporting to Radworks during the quarterly community calls (independent to the Grants Orgs updates)
The Grants Committee will be responsible for reviewing the team's progress with representatives from the Radicle Org on a quarterly basis. This is to ensure that the team's proposed quarterly objectives are in alignment with the Org's roadmap & goals.
> Note:
> The reason for earmarking this budget is to put this work in a solid position to allocate labor towards tools that we feel are essential for onboarding new users.
>
> While we are allocating financial capital, we are also allocating human capital. Having this budget set aside will make sure that the people working on it have better confidence and ability to be full-time with the work, rather than haphazardly coming and going.
# Grant Categories
Grants can be funded _retroactively_ (i.e. paid out after a product is already finished) or _proactively_ (i.e. paid out before work is started).
All grants will be streamed to grantees via Drips.
## Integrations & Tooling
This category focuses on projects that develop tools and integrations to enhance user's experience with Radicle and/or Drips. The aim is to improve the interoperability between different software systems, streamline workflows, and provide utilities that aid in development, deployment, or monitoring. This could include developing plugins for popular platforms, creating APIs that connect disparate systems, or building tools that simplify complex processes. The emphasis is on making Radworks' technologies more efficient and user-friendly.
**Budget**
100,000 USDC or 25% of the budget.
## Alternative Interfaces
This category is aimed at funding the development of new interfaces for interacting with Radworks' technologies, with a focus on increasing client diversity and enhancing technical resiliency. The goal is to broaden the appeal and accessibility of Radicle and Drips by encouraging a variety of use cases and user bases.
**Budget**
100,000 USDC or 25% of the budget.
# Organizational Structure
The Grants committee includes all members of our Gnosis Safe multi-sig, [found here](https://app.safe.global/balances?safe=eth:0x394B920c5d39E0Ca40fCa2871569B6B90D750c7c).
## Current Members
In alphabetical order:
* Abbey (Radworks)
* Bordumb (Radworks Community; Lead)
* Nader (Aave/Lens, DevDAO founder)
* Nas (ex. Safe, ex. Radworks)
## Member Responsibilities
* **Recruitment of Grantees**: engage with core teams (Radicle, Drips, Governance) to create requests for proposal (RFPs) that address peripheral needs of core teams, which will be the foundation of grantee work.
* **Reviewing Applications**: reviewing applications in detail. If a committee member does not understand something, they are expected to be resourceful in learning or finding outside council on a topic.
* **Reviewing Milestones/Completions**: reviewing milestones/completed work in detail. If a committee member does not know something, they are expected to be resourceful in learning or finding outside council on a topic.
* **Multi-Sig voting**: participate in voting on and funding grants.
* **Meetings**: most work will be done asynchronously, but committee members are expected to actively participate on Discourse, community, and governance calls.
## Membership Terms
If a member fails to actively participate in voting, they may be removed from the committee. As this is all on-chain, it will be a fairly straightforward process. For now, we will expect members to evaluate and vote on at least 1 grant per 3 months. If there is no grant to be voted on, this will not apply for the 3 month period. Members may abstain from a vote, but must publicly declare their abstention.
The rules above will apply retroactively for 2023 voting, and will effective immediately upon approval of this proposal.
If a member is found in violation of our community guidelines, they may be removed from the committee.
# Communication
## Applications
Grant applications are the primary documents that outline what is being worked on.
You can find more info on Discourse here: [https://community.radworks.org/c/grants/24](https://community.radworks.org/c/grants/24)
## Repos
All of our long-term documentation, including various templates (proposals, grant applications, RFPs, etc.), as well as organizational structure can be found in our repos below.
* Radicle: TBD
* GitHub: [https://github.com/radicle-foundation/radworks-grants](https://github.com/radicle-foundation/radworks-grants)
# Reporting & Success Criteria
Through Q2 2024, the Foundation Org will provide monthly financial reporting to Radworks on behalf of the Foundation, Radicle, Drips and Grants Orgs. Therefore, starting in Q3 2024, the *Grants Org* will publish monthly financial reports on Radworks-granted funds spent by the *Grants Org*.
The _Grants_ lead (Bordumb) regularly gives updates on current and prospective grantees in all quarterly community calls and provides written quarterly updates on community.radworks.org.
Each grant-funded team will present quarterly progress seperately to the Org Lead as part of the quarterly community calls. They will also provide written quarterly updates on community.radworks.org.
### Integrations & Tooling
#### Technical
* 100% of new features delivered
#### Operational
* 100% of tools tested by users
* 100% of tools get feedback from users
* 100% of grants paid out via Drips
* 100% of code delivered via Radicle
## Stand Ups
Bi-weekly.
# Reasoning & Analysis
## Integrations & Tooling
The primary goal with Integration & Tooling (IT) grants is to cover key integrations for Radicle code collaboration. These include integrations across the typical software development stack.
Starting from writing code in IDEs, to instant messaging for teams, continuous integration/development (CI/CD), these grants are aimed at making it easier for developers to plug Radicle into their existing workflows.
Essentially, the aim is to make sure we have integrations across each part of the software development life-cycle, as shown below. So far, we are focused on the most basic components around Coding and Deployment of software.
![image|690x388](upload://h3Ftz5zQhBA0MogGaIeGF7N3Ftw.png)
Each tool we integrate with is generally prioritized by a combination of market share.
# Retrospective
https://community.radworks.org/t/grants-org-retrospective-2023/3410
# Timeline & Budget
All costs will be spread out over 2024.
### USDC
250,000 USDC for Grants
### RAD
100,000 RAD
The analysis for 40,000 RAD is as follows:
* In 2023, the Grants Lead received 52,000 USDC worth of RAD (see [here](https://github.com/radicle-foundation/radworks-grants/blob/main/governance/remuneration/season_2/bordumb_1.md), [here](https://github.com/radicle-foundation/radworks-grants/blob/main/governance/remuneration/season_2/bordumb_1.md), and [here](https://github.com/radicle-foundation/radworks-grants/blob/main/governance/remuneration/season_2/bordumb_year_end.md))
* Over the past 2 years of Grants, we have been paying committee members based on hours of work. In analyzing this data, the Grants Lead has worked *7.5X* more hours than others.
#### Other RAD
We would like an additional 20,000 RAD to help incentivize grantees who have made key contributions to the ecosystem
# Fund Management
> *The *Grants Org* - also the "Grant Recipient" of Radworks, if this proposal is passed - hereby agrees to use the amount granted by Radworks in support of fulfilling the purpose outlined in the "Purpose" section above. The Grant Recipient understands and acknowledges that the awarded amount may be used only for this Purpose. Furthermore, any part of the grant that goes unused in the calendar year outlined in this proposal (for 2024) will either be returned to the Radworks Treasury (by March 2025) or rolled over into and applied towards the Org's 2025 proposal and future grant from Radworks.*
## Assets
All assets will reside in one of two locations: Gnosis Safe or Drips. These will be used both for paying grantees and committee members.
Any remaining assets will roll-over into the 2025 budget.
### Gnosis Safe
Link: [https://app.safe.global/balances?safe=eth:0x394B920c5d39E0Ca40fCa2871569B6B90D750c7c](https://app.safe.global/balances?safe=eth:0x394B920c5d39E0Ca40fCa2871569B6B90D750c7c)
### Drips Account
Link: [https://www.drips.network/app/0x394B920c5d39E0Ca40fCa2871569B6B90D750c7c](https://www.drips.network/app/0x394B920c5d39E0Ca40fCa2871569B6B90D750c7c)
### Risk Management
Paying for Grants work is inherently risky. We do not know which projects will succeed in delivering work.
However, luckily with Drips, we can pause and completely stop Streams at will. In the event that a Grantee needs to pause work or stops working entirely for any reason, we will be able to either pause or stop the Stream.
## Retrospective
Please see 2023 retrospective here: https://community.radworks.org/t/grants-org-retrospective-2023/3410
## Technical Implementation
https://github.com/radicle-foundation/radworks-governance/blob/main/proposals/fund_grants_2024.proposal