But this is an algorithm! It just has subjective components. :)

Indeed I guessed at much of this, including opening up those links. What I didn't have is a good way of knowing what members had recently shepherded, and so I couldn't do load-balancing.

For my part, I think the current algorithm is good and does not need refinement. Some of us are naturally more inclined to keep up with this kind of work, and thus expecting shepherds to always volunteer themselves will lead to an effectively smaller committee, which is not what we want.

Thanks for laying this out!

Richard

On Jul 29, 2022, at 4:24 PM, Joachim Breitner <mail@joachim-breitner.de> wrote:

Hi committee,

I’m back, and I _think_ I have caught up on committee work. If you
expected me to do something when back and I have not done it yet, I
probably forgot and will appreciate a nudge.

Richard writes

While I'm happy to take over some of his responsibilities, I don't 
have access to the proposal-assigning algorithm. (I can view the
current state of who has open proposals, but I don't have easy access
to e.g. the recent history to accomplish load-balancing.)

and I have to disappoint you: there isn’t much of an algorithm there.
It’s all manual and very subjective. Here is what I do to assign a
proposal:

I open these three links (all linked from the beginning of the README)
to remind myself of who is actually on the committee, and who is
already shepherding a proposal:
https://github.com/ghc-proposals/ghc-proposals#who-is-the-committee
https://github.com/ghc-proposals/ghc-proposals/pulls?q=is%3Aopen+is%3Apr+label%3A%22Pending+shepherd+recommendation%22
https://github.com/ghc-proposals/ghc-proposals/pulls?q=is%3Aopen+is%3Apr+label%3A%22Pending+committee+review%22

This way I see who is currently not shepherding.

I recently added the profile pictures to the Who-is-the-committee
section to make that part easier.

Then I just pick someone, keeping in mind what I believe is the
person’s interest and strength. If someone has already commented on a
proposal, they are more likely to become shepherd. I avoid assigning to
Chairs unless I have a good reason to. Intuitively, some members are
more, well, efficient, others are particularly thorough; I try to keep
that in mind as I assign small, large, deep, superficial proposals. And
that’s it.

I once wrote some code¹ to run statistics on the proposal project to
help me pick shepherds, but it is very slow and I haven't been using it
in a long time.


It’s not a great way to assign shepherds. Here is a better way: All
committee members tend to have an eye on incoming proposals and engage
early with those that they care about, and voluntarily say that they
_want_ to shepherd a particular proposal, so when it is submitted, I
don't have to make any more arbitrary choices :-)


Cheers,
Joachim

¹ https://github.com/nomeata/ghc-proposals-stats


--
Joachim Breitner
 mail@joachim-breitner.de
 http://www.joachim-breitner.de/

_______________________________________________
ghc-steering-committee mailing list
ghc-steering-committee@haskell.org
https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee