-
Notifications
You must be signed in to change notification settings - Fork 26
Add Rust Project contributor survey 2025 #350
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is great, thanks for working on this @Kobzol, some thoughts:
-
I think we should ask if someone has previously been paid to contribute to Rust.
- It would be useful to capture whether there are project members who have previously been funded to contribute and no longer are - repeating this survey over time will capture this, but for the first run, we might ask. We might also ask why - did grants run out? contracts didn't get renewed? was someone laid off? We could ask where these previous funding sources came from.
- We could also learn whether there are contributors that have had multiple sources of funding over time while there are contributors who don't have any opportunities (that might be expected, one would hope our most experienced language team members, for example, to always have opportunities like this, but it is interesting nevertheless).
-
We should also ask what team(s) people are in (and not just rely on the username to work this out, in case someone would prefer not just to share that).
-
There is very likely to be an uneven distribution of contributor support, and that might be useful to understand.
-
We could ask if there paid contributors are directed more towards one of these teams than others.
-
-
We could ask whether contributions are directed by their source of funding.
-
e.g. at Arm, we focus on Arm support in the toolchain, but other contributors direct their own work, or work on things useful to their employer's users of Rust but aren't employer-specific as such.
-
If this is the case, whether time is allotted for upstream responsibilities like reviews, might be useful to know.
-
-
You've said you're not interested in capturing this in the PR description, but I think it would be useful to know whether someone contributes full-time/part-time/etc.
- I think that's subtly different from what % of contributions are funded or the source of funding (employment/contracts/etc). Someone might have 100% of their contributions funded by a contract, but that could be only four hours each week and they still need to work another job and do Rust in the evenings and weekends - that still impacts the sustainability of their contributions and we should understand that.
-
If someone has funding, we should ask how long they have been funded from their current sources and how long that funding lasts (where applicable).
- It would be interesting to know if everyone is on 1yr contracts that might not be renewed. Similarly, if lots of people have been in their positions for many years, that implies a stability that is useful to know.
-
We could ask whether the non-Rust contribution part of their role is related to Rust? Or whether their source of funding is a user of Rust?
- Contributors often also support internal use of Rust with some of their time, this is leveraging the experience of the contributor with the project and language, and knowing that is a dynamic at play might be useful?
- Similarly, knowing whether most of contributor funding comes from users of the language supporting it, compared to grants/funds that are from foundations/organisations independent of language, might be a proxy for the sustainability of that source of funding (in principle, if you use Rust then you're probably likely to continue supporting it compared to if you don't care about Rust as such and were funding a specific project).
-
For those who don't need funding to contribute, we could try and determine how they make that sustainable?
- e.g. someone is an academic or student and so can do it on the side easily enough, or something like that.
-
If we're going to ask about the dollar amounts of funding received, then asking for a location might make sense - as that will help contextualise that amount.
- e.g. contributors in Europe are likely paid less than their North American counterparts and that could explain some variation in the results to that question
-
Is it worth trying to reach people funded to work on Rust but who aren't project members?
- I agree it makes sense to limit this to project members, not irregular contributors, to get a better signal-to-noise ratio. Ultimately, not everyone will be able to get funding to work on Rust, but we want as many of the core contributors to the toolchain to have funding, where the impact should be greatest and that funding is most deserved, so using project members as a proxy for that makes sense. However, I'm aware of people who are paid to work on Rust full-time but aren't project members, which might be an interesting niche to understand more? Where is that funding coming from? Could it be distributed more effectively? etc.
-
We could also ask, esp. if someone isn't willing to share the name of their employer/source of funding, if that source of funding is a member of the Foundation or not?
Good idea, added.
Fair enough, added.
Also a good idea, added. Although the specific wording of answers might need some more work.
Hmm. My assumption was that if you're able to get funding for your Rust contributions, it would naturally diminish the time you have to spend working on another job. I worry a bit that this survey is becoming a bit larger than I originally hoped, but if you could suggest a specific question/answer set/framing to put into the updated version of the survey, I can add it.
Added.
I think that this question is starting to hit diminishing returns of what we want to figure out in this survey, and I don't know how to frame it. I'd rather let people describe the specifics in the final open answer.
Added.
Added.
Maybe, but I'm not sure if this survey is the right avenue for that. IMO we should focus on the use-case on supporting Project members that work on Rust and have not enough funding, rather than examining companies that pay people to work on Rust from outside the Project.
Would we make that information public? I think that the only reason not to share the information is if we made it public or mappable to individual people. If we ensure that the information will not be shared with anyone outside the Council/RF, then I hope people wouldn't hesitate to share the company names. More generally, I worry about the survey becoming a bit large, as noted above. |
Currently, we have 16 questions (out of which 4 are personal/heavily optional). For context, the compiler performance survey had 28, the annual survey has 50, the most recent micro survey had ~13. I think that we can make this survey a bit "longer than usual", as I expect/hope that Rust Project contributions will spend enough time on this, but I also don't want to make the survey too complicated 😅 |
That's fair enough, wasn't expecting every suggestion to be adopted. I'd hope that most of these questions would be quite quick to answer. Only addition I'd make is something along the lines of:
This would be sufficient, alongside our other questions, to capture whether someone who is funded for 100% of their contributions is nevertheless probably only part-time and doing their contributions alongside other sources of income. |
I was just thinking today that we need to have this question 👍 I'll add it. |
I mean, the answer could be "It's not". |
We could also ask whether the contributor would want to be listed as a project member looking for funding/work, if the project were ever to create that type of public list. Obviously we don't have anything like that today, but it doesn't seem too far fetched that we might want to do something like that in future. |
That's a good point, I'll add it. By the way, today I was reminded of another Contributor survey that was designed in 2021 (https://github.com/rust-lang/surveys/blob/main/surveys/2021-contributor-survey/design.md, https://github.com/rust-lang/surveys/blob/main/surveys/2021-contributor-survey/questions.md), which was never actually published :( It was much broader than this survey. But if someone finds some interesting questions there that we could pluck into this one, let me know. I think that it might be interesting to ask what are the specific actions that people work on (reviews, implementation, triaging, infra, etc.). That might show some patterns like "people doing triaging are essentially unfunded" or something like that. |
This makes more sense for people that don't work full-time on Rust.
…he type of things people do in Rust
Pushed a couple of changes. |
- That sounds like a good idea, and I would potentially like to be on that list | ||
- That sounds like a good idea, but I do not want to be on such a list | ||
- I'm neutral/I don't know | ||
- That sounds like a bad idea |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
maybe?
- That sounds like a bad idea | |
- That sounds like a bad idea (please explain why) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good point, I was also thinking about that, but I'm not sure how to combine "select one answer" + allow an open answer, hmm.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
the "clean" way would probably be a follow-up open question such as "if in the prev. question you selected ... do you want want to explain why?". It's a bit verbose but I can't think of another way as well :^)
Another idea for a question: do you think you are likely to lose your funding in the future? (for those without fixed-length contracts, i.e. do you think you'll be laid off soon, even if you aren't yet?) |
Do you think we could combine that with this existing question?
|
I think that question is useful for determining the typical length of contracts/fixed-term employment that contributors have, and that's separate from the "things aren't looking good, I'm worried that my employer is going to cut my team or not renew my contract" that I'd like to additionally capture, if we mix those then it's hard to know if everyone is on one-year rolling contracts which are very likely to renew or everyone is expecting to be unfunded after a year. |
Good point, I agree. Added it. Also added another question about what parts of rust-lang people work on, for cohort analysis. |
|
||
- Compiler | ||
- Standard library | ||
- Rustdoc |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I can think of more parts of the Rust project missing in this list like t-infra, gcc-codegen, LLVM (included in Compiler?), crates.io, docs.rs, editorial content (social, newsletter, etc.), mentoring & co., community
But before making this list too long, I think "Other" should cover what's missing.
This is a draft of a survey targeted at Rust Project members, to find out how much of their contribution time is being funded, vs how much of it is volunteer based (rust-lang/leadership-council#222).
Some notes:
t-all
or make the survey password-protected (but then we need to share the password through a similar channel anyway).