Conversation
This RFC charters the Grants team and establishes a grants program for 2026, funded from the council's Project Priorities budget, to support Rust Project contributors.
Kobzol
left a comment
There was a problem hiding this comment.
Thank you for putting this together, I really like it! Left some comments, but in general I'm pretty happy with this.
About naming, Maybe we could make it "Rust Project Grants Program" (RPGP 😆)? The standalone name "Project" makes it sound a bit like it's about specific projects to be done, which is not the case. I guess the RF grants also weren't just "Foundation Grants"? But that's just a nit, doesn't really matter much.
|
|
||
| ## Summary | ||
|
|
||
| This RFC allocates $100,000 from the council's budget to support approximately five contributors at $1,500 per month for twelve months. A Grants team of five people, appointed by the council, selects recipients and oversees the program. The program expects light reporting from grantees, coordinated through our program managers, to ensure we can demonstrate success and continue to improve. |
There was a problem hiding this comment.
Meta-point: do you think that we need to make the $ specifics be hardcoded in the RFC? I think that the RFC could also work just fine as a general mechanism for LC/Project-funded grants, while keeping the lowest-level implementation details, like $/month and the total amount of $ spent, be dynamic variables. Because they can (and the total amount likely will) change year from year, and maybe it will change even this year, who knows what will happen.
Hardcoding also means that we'd have to do a new RFC every year (?). The council also approved e.g. a travel grant budget for a similar $ amount, or the Project management program, which gets even much more money this year, and we didn't do a RFC for that (AFAIK? definitely not for the precise amounts of $ spent). So I think that the RFC shouldn't specify the concrete monetary amounts.
Edit: after reading the whole RFC, I guess the idea is to indeed have a new RFC every year? In that case it makes sense to keep the amounts in.
There was a problem hiding this comment.
maybe we could phrase it as "initial budget" and the available amount will be set by the council each year? doing an RFC process for that each year would seem a bit excessive to me 😅
|
|
||
| ### Grant amounts | ||
|
|
||
| Each grant provides **$1,500 per month**, paid quarterly for a **twelve-month term**. |
There was a problem hiding this comment.
nit: If we do provide specific amounts, I would specify them either in the total, so this would be $18000, or in the amounts that will be paid (so in this case it would be $4500). Displaying it per month makes it sound like a salary (and amplifies the fact that it might not be paid in full), and it's also a bit misleading since it does not represent the actually paid amounts.
Our Contributor survey shown that some people are used to talking about money per hour, some per day, some per month and others per year. So I don't think that there's anything "canonical" about a monthly value :)
|
|
||
| ### Grant amounts | ||
|
|
||
| Each grant provides **$1,500 per month**, paid quarterly for a **twelve-month term**. |
There was a problem hiding this comment.
(regardless of my metapoint raised above, I use this opportunity to discuss the specific $ amounts :) )
I would prefer to support more than five people. Assuming that we have 100k for our disposal, and we scale the grant for a year and keep some small buffer, here are some variants:
- (I wouldn't go any higher)
- 18 000 USD/person supports ~5 people
- 16 000 USD/person supports ~6 people
- 14 000 USD/person supports ~7 people
- 12 000 USD/person supports ~8 people
- 10 000 USD per person supports ~9 people
- (I wouldn't go any lower)
I think that 10k for 9 people or 12k for 8 people might provide more good overall than 18k for 5 people. The difference between receiving 12k vs 18k for 5 people feels smaller than the difference between receiving 0k vs 12k for 3 people.
I would personally go with 1k/month, 12k/year, for ~8 people. $12k is 240 hours with $50/hour, which is actually close to the hourly amount paid for e.g. Python/Zig fellows, and in many parts of the world it is more than a decent salary. 240/50 weeks in a year (modulo holidays etc.) is ~5 hours a week, which seems like a decent baseline for small-scale contribution that will be funded fully.
(we can also discuss specifics based on our non-public Rust Project Contributor Survey results elsewhere)
|
|
||
| - **Age**: Recipients must be at least 18 years old, in compliance with applicable labor laws. | ||
|
|
||
| - **Language**: Recipients need a reasonable working proficiency in English. This isn't about native fluency — many excellent contributors work in English as a second or third language — but recipients will need to interact with teams, respond to program managers, and provide written updates. |
There was a problem hiding this comment.
| - **Language**: Recipients need a reasonable working proficiency in English. This isn't about native fluency — many excellent contributors work in English as a second or third language — but recipients will need to interact with teams, respond to program managers, and provide written updates. | |
| provide written updates. |
The project managers should be able to help with this, right? So in theory if the contributor can communicate with them, they don't need to be writing written reports/blog posts themselves. I think that for some people the notion of having to produce such written content can be a bit scary.
|
|
||
| #### Legal agreement | ||
|
|
||
| The Foundation may require grant recipients to sign a legal agreement covering terms such as use of funds, intellectual property, reporting expectations, code of conduct adherence, and other standard provisions. The details will be determined in coordination with the Foundation, but applicants should expect some form of written agreement. |
There was a problem hiding this comment.
The "use of funds" and "intellectual property" clauses sound a bit.. weird. I assume this is related to legal things like signing that someone won't use the money for terrorism or something like that? Maybe we could clarify that to ensure that the point gets across. It could be interpreted as the Rust Foundation telling people how to spend the received money, or that the Foundation will retain IP of the code that the grantees write, etc.
| - **Continue contributing to the Rust Project** in a manner consistent with what they were doing when selected. We're not specifying deliverables, but we expect continued engagement. | ||
| - **Provide brief quarterly updates** describing work done and any changes to the grantee's situation. A few paragraphs is fine. (Project Goals updates satisfy this requirement; simply point the Grants team to those.) | ||
| - **Be responsive to program managers** who will check in periodically to help collect updates and ensure reporting happens smoothly. | ||
| - **Consider participating in Project Goals** where relevant. We won't require this, and it won't affect selection, but grantees whose work aligns with a goal may benefit from the structure and support that goals provide. |
There was a problem hiding this comment.
I still feel that this is a bit too strong, as it's in the "What we expect" section :) I'd create a third section between "What we expect" and "What we don't expect", something like "What grantees might consider".
Maybe giving an example of the structure/support benefit of the goals might be beneficial, I didn't quite get that.
There was a problem hiding this comment.
|
|
||
| #### Contact, communication, and workspace | ||
|
|
||
| - **Zulip stream**: `#grants`. |
There was a problem hiding this comment.
nit: Maybe we can reuse the already existing #funding channel? Or at least something like #funding/grants, to have more structure around it and make it easier to find channels related to funds.
| #### Contact, communication, and workspace | ||
|
|
||
| - **Zulip stream**: `#grants`. | ||
| - **GitHub**: Issues, policies, minutes, recusals, and other team records are stored in the `rust-lang/grants-team` repository. |
There was a problem hiding this comment.
nit: Same here, we have too many repositories already 😆 We can just reuse the existing funding repo?
|
|
||
| ## Summary | ||
|
|
||
| This RFC allocates $100,000 from the council's budget to support approximately five contributors at $1,500 per month for twelve months. A Grants team of five people, appointed by the council, selects recipients and oversees the program. The program expects light reporting from grantees, coordinated through our program managers, to ensure we can demonstrate success and continue to improve. |
There was a problem hiding this comment.
We might want to double check the amount available vs the applied travel grant amounts so far to ensure we'll have enough for both at the current pace.
|
|
||
| We select people based on what they've already demonstrated. We expect they'll continue doing valuable work, but we don't specify what that work must be. We ask for light reporting, but that's to help us learn and communicate successes, not to hold people accountable for specific deliverables. | ||
|
|
||
| If someone receives a grant and circumstances change such that the grantee can't continue contributing, we have a conversation. We don't demand refunds. We don't punish people for life changes. But we also don't ignore the situation — we talk about it and figure out together whether the grant should continue. |
There was a problem hiding this comment.
Might be good to clarify who "we" is - Grants team or council?
There was a problem hiding this comment.
Overall, I am very positive on this. Thank you for writing this up!
The only thing I feel might be missing is having an explicit "off-ramp", maybe quarterly, where the grant team or grant receiver can say "hey, life has changed, I'd like to cut this early".
This would generally only be called by the grants team if the grant receiver totally no-shows, or in cases like CoC violations, etc. But also gives a clear answer to "what do we do" in some of the "life changes" scenarios listed.
This RFC charters the Grants team and establishes a grants program for 2026, funded from the council's Project Priorities budget, to support Rust Project contributors.
@rust-lang/leadership-council
Important
When responding to RFCs, try to use inline review comments (it is possible to leave an inline review comment for the entire file at the top) instead of direct comments for normal comments and keep normal comments for procedural matters like starting FCPs.
This keeps the discussion more organized.
Rendered