Hi Ewa,
This is really awesome! It's great that the PSF can now hire someone for that!
The job offer is great, but I would like some clarification :-) (While I was part of the previous Steering Council who helped to write the job offer, sadly I was not avaialble last months when it was discussed.)
Who is going to "manage" the candidate?
On Mon, Apr 5, 2021 at 7:30 PM Ewa Jodlowska <ewa@python.org> wrote:
The Developer-in-Residence will work full-time for one year to assist CPython maintainers and the Steering Council. Areas of responsibility will include analytical research to understand the project's volunteer hours and funding, investigation of project priorities and their tasks going forward, and begin working on those priorities. We are looking to hire an existing core developer because of the type of work involved and interaction with volunteer core developers and contributors. Need and available funding will determine any extension beyond the first year.
Create metrics (...) Combine usage and surveyed metrics to determine which standard library modules need help and what the maintainer cost is for standard library modules
What are the expected steps after the production of such report of the stdlib usage and maintenance? Hire more people to maintain most used stdlib modules, or deprecate least used modules?
For example, asyncio and ctypes are popular but barely maintained. For the CI, the most unstable test is test_asyncio (I asked for help multiple times on python-dev). Do we need a more detailed reports on the 302 (len(sys.stdlib_module_names)) stdlib modules?
I understand that the first step is to put priorities in bug triage and PR reviews for the candidate.
Address Pull Request and Issue backlogs based on the developed metrics and other metrics created by the Steering Council
What about the candidate skills? I don't expect the candidate to be able to fix any bug in any part of the Python. What if is the priority is a module that the candidate doesn't know? They should do their best, help debugging issues and propose a fix? I expect the existing module maintainers to remain the local autority to review pull requests written by the candidate, to avoid mistakes.
In my experience, it usually helps a lot to do a first basic review, but then ask for the maintainers of a module to do the final review and merge the change. Finding the right people for a review on a specific PR is a very valuable addition to a PR. The candidate could be a great help for that!
Victor
Night gathers, and now my watch begins. It shall not end until my death.