Skip to content
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

Finding new maintainers #1940

Closed
ArturKovacs opened this issue May 16, 2021 · 14 comments
Closed

Finding new maintainers #1940

ArturKovacs opened this issue May 16, 2021 · 14 comments
Labels
S - meta Project governance

Comments

@ArturKovacs
Copy link
Contributor

ArturKovacs commented May 16, 2021

As shown in the testers and contributors table, currently there's no maintainer for X11, Wayland, and the Web. Needless to say this makes it difficult to address issues and merge PRs involving those platforms. We need at least one maintainer for every platform.

The question is how to find a suitable maintainer. In my view the requirements for a maintainer is to: be kind, have time for it, have experience in Rust, and be motivated to maintain the platform.

@coderedart brought up in the matrix room, that we could ask for a maintainer on Reddit or Discord. I think this is not a bad idea, but I'm just worried there may be multiple people suddenly showing up and picking one seems like a stressful thing to me. What are your thoughts @maroider, @francesca64, @msiglreith?

@ArturKovacs ArturKovacs added the S - meta Project governance label May 16, 2021
@FuriouZz
Copy link

FuriouZz commented May 16, 2021

Hello @ArturKovacs ! I am mainly a web developer who have some experiences in Rust. I worked on winit last year on the gamepad implementation. I will be glad to help mainly on the wasm backend.

@maroider
Copy link
Member

maroider commented May 20, 2021

I will be glad to help mainly on the wasm backend.

I'm glad to see that you want to help out :), but let's keep this issue focused on discussing a strategy for attracting and on-boarding new maintainers.


This comment should probably be read with the following in mind: I have no idea what I'm doing, and I'm completely inexperienced in these matters.

Advertising

we could ask for a maintainer on Reddit or Discord

In terms of advertising the vacancies, I think we should cast a wide net as possible. The following channels may be reasonable places to advertise:

  • Discord Servers
    • Rust Programming Language Community Server
    • Game Development in Rust
      • Maybe do a short segment on the monthly meetup?
    • Amethyst
    • Bevy Engine
    • Veloren Community
  • Reddit
    • r/rust
    • r/rust_gamedev (most users are probably also subbed to r/rust)
  • Newsletters

In particular, I hope we can get some regular contributions from Bevy and Veloren, as both projects have a solid number of contributors.

On-boarding

I'm just worried there may be multiple people suddenly showing up and picking one seems like a stressful thing to me

I don't think we should outright "pick" new maintainers from the get-go. I believe it is best that the maintainers we end up with are willing, motivated and able to address issues and review PRs in a timely manner, and merely saying "I want to be a maintainer" is hardly enough to convince me that someone is actually fit to be a maintainer. Instead, I think we should:

  1. Bring interested parties on board as contributors.
  2. Someone (probably me, tbh) will then ping them in issues and PRs affecting platforms said contributors have marked themselves as "interested" in.
  3. Those that stick around, review PRs, and are otherwise excellent contributors can then be promoted to maintainers, if they so desire.

Non-maintainer roles

I think it's also a good idea to ask people if they'd be willing to be merely be available to answer questions that may come up about certain platforms, i.e. the Expert role in the "Testers and Contributors" table. Having easy access to people who can answer platform-specific questions would potentially be a lot more efficient than always having to figure things out on our own.

There are already two other issues on the issue tracker about the maintainership of Wayland (#1777) and WASM (#972). I was going to write something related to these issues, but I'm just putting this here for the automatic "backlinks" for now.

@francesca64
Copy link
Member

@maroider thanks for saying all the good ideas so that I don't have to do anything.

@dhardy
Copy link
Contributor

dhardy commented May 22, 2021

In terms of advertising the vacancies, I think we should cast a wide net as possible.

Maybe that helps, maybe not. My experience is that interested people tend to stumble on the project anyway — winit already has plenty of users. Perhaps though advertising through the major dependants (I guess the game engines + iced) may help.

I'm sure there are also plenty of people (like myself) reading the project pages but mostly staying quiet.

My 2c from maintaining rand: sometimes just asking someone who's already stopped by if they'd like to make a PR or review X can work.

In terms of on-boarding, perhaps it would help to:

  1. have a place where new-comers can introduce themselves and ask questions (I guess that's what the three IM boards are for, though not everyone uses those; a permanently-open issue may also help)
  2. have a jobs-board, e.g. asking someone familiar with X11 to review PR ###

@ArturKovacs
Copy link
Contributor Author

For some reason I thought that we would need to immediately memberize some of those who respond to our advertisement. Which would not be a good idea, so I really like the approach that @maroider laid out - we invite people, then those who are active in winit and show promise, are offered to get memberized.

There seems to be consensus that we should advertise in those communities that currently depend on winit. @maroider do you mind doing so? The game related ones seem like a good start. Otherwise I can do it.

@maroider
Copy link
Member

My experience is that interested people tend to stumble on the project anyway

Yeah, that's how I ended up here at least :)

I'm not really expecting a lot of people to end up becoming contributors, but my hope is that by casting "a wide net", we'll (maybe) end up with a couple more contributors who might otherwise not have joined us.

Major dependants, as you mentioned, are probably the place we're we'll see the most engagement (if any).

I'm sure there are also plenty of people (like myself) reading the project pages but mostly staying quiet.

I agree, but this is also something that's hard to get a good read on.

My 2c from maintaining rand: sometimes just asking someone who's already stopped by if they'd like to make a PR or review X can work.

  • have a place where new-comers can introduce themselves and ask questions (I guess that's what the three IM boards are for, though not everyone uses those; a permanently-open issue may also help)
  • have a jobs-board, e.g. asking someone familiar with X11 to review PR ###

I think that having a permanently-open on-boarding issue might be helpful, but I'm not sure what a "jobs-board" would look like.

In a similar vein to these suggestions: it might be useful to enable GitHub's new(-ish) "Discussion" feature on this repository as another way to "contact the Winit folks".

@maroider
Copy link
Member

There seems to be consensus that we should advertise in those communities that currently depend on winit. @maroider do you mind doing so? The game related ones seem like a good start. Otherwise I can do it.

Sure, I can handle that. I probably won't get to it this week, but I'll see what I can do next week.

@kchibisov
Copy link
Member

kchibisov commented Jun 9, 2021

currently there's no maintainer for X11, Wayland

Well, I'm technically still a Wayland maintainer, and I've left winit to @vberger for the time I wouldn't have time to work on it (and other things). However, I have an opportunity to work on things from time to time, so it shouldn't be a problem for me to review/writing Wayland related stuff, etc. It could just take a bit more time than it should.

P.s.
Accidentally closed the issue...

@kchibisov kchibisov reopened this Jun 9, 2021
@maroider
Copy link
Member

Well, I'm technically still a Wayland maintainer

I'm glad to see that you're still alive and interested in contributing, @kchibisov.
With that in mind, I've pre-emptively re-added you to the table.

and I've left winit to @vberger for the time I wouldn't have time to work on it (and other things).

Was this communicated somewhere? I can't recall seeing this written anywhere.

@kchibisov
Copy link
Member

I'm glad to see that you're still alive and interested in contributing,

I'm glad that I'm still alive too, I just haven't had physical access to any PC for like 6 month, so was a bit hard to contribute (I can still disappear for the rest 6 month though).

Was this communicated somewhere? I can't recall seeing this written anywhere.

it was done on matrix with @vberger , since he was maintaining Wayland in the past and helped a lot with sctk and rust + Wayland infra.

@maroider
Copy link
Member

maroider commented Jul 3, 2021

Welp, it took me longer than I'd like to get around to actually doing something, but I've submitted a PR for a section on the This month in Rust GameDev newsletter advertising our need for helping hands, among other things.

I'll get on with spreading the word elsewhere when I can find the motivation to do so.

@madsmtm
Copy link
Member

madsmtm commented Dec 24, 2021

So, uh, happy holidays, I've been here for a while and have somehow ended up configuring my watch settings to "All activity" 😁. I got the kind offer (still sorry about not having gotten that PR through!) to become a maintainer a while ago, but turned it down because I didn't feel like I was ready to take on that responsibility.

I think I am now, so I'll be glad to take on the role as macOS maintainer for at least the coming 6 months, if you'll have me! It should be noted that I'm a student, so won't have that much time, and I'm mostly doing this because I want to, there is not a higher purpose for me (like actually developing a useful application using winit. Yet, at least).

I'm doing this now to prevent it from turning in to a bad new year's promise that I won't keep 😉

@francesca64
Copy link
Member

@madsmtm thanks so much, and we're glad to have you! Invite sent.

@kchibisov
Copy link
Member

I'll close this issue. Maintainers will be naturally picked by the time they spent fighting winit and establishing the required 'trust' level with the rest maintainers.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
S - meta Project governance
Development

No branches or pull requests

7 participants