Growth/Structured mentor list

This page describes the team's work on the "Structured mentor list" project. This page contains major assets, designs, open questions, and decisions. Most incremental updates on progress will be posted on the general Growth team updates page, with some large or detailed updates posted here.

Current status

 * 2021-11-22: works begins to plan project
 * 2022-01-15: engineering starts
 * 2022-XX-XX: structured mentor list is available at all beta wikis and at test.wikipedia.org
 * Next: Deploy structured mentor list to Growth pilot wikis

Why are we doing this?
Currently, communities have to maintain a wikitext-based mentor list (example at English Wikipedia, docs), which is a regular wikipage, with no predetermined structure. This approach has a couple of disadvantages:


 * Limited extendibility: Mentor's username and their message are separated with a pipe (the | character). This is not an issue when message is the only attribute mentors can configure, but it wouldn't be practical to use the same list to store additional information about the mentor (such as, topics the mentor is interested in or their time availability).
 * Error-prone: aaa
 * Hard to parse: aaa

Structured mentor list resolves all of those issues. Because the data is stored in a JSON page in the MediaWiki: namespace (see #How does it work?), they can be easily extended or parsed by a machine. Since mentors change information in the list via a form (rather than editing the list directly), it is harder to make a mistake that'd break the mentor list.

What impact will it have on communities?
Deploying structured mentor list to a wiki will change most mentorship-associated workflows. For instance, instead of going to a wikitext-based mentor list to enroll, a soon-to-be mentor will have to go to their Mentor dashboard to enroll, or to change information about themselves. The Growth team will take care about converting the wikitext mentor list to the new structured mentor list, so no information will be lost.

It might be necessary to update the wikitext mentor list to include useful information (such as, where to enroll or what mentorship is). It is also possible to delete it, and rely on the Mentor dashboard to provide all necessary information to the mentors.

How does it work?
Conceptually, the structured mentor list is similar to the Community configuration project, where the Growth team moved certain settings to an on-wiki page. Similar to what Community configuration does, the actual list of mentors is stored in a JSON page in the MediaWiki namespace, which is called MediaWiki:GrowthMentors.json (example). To let non-tech savvy community members to be mentors, we built several forms that can be used to maintain the list of mentors. If direct access is needed, administrators are able to edit the JSON page directly.