As we rely on volunteers, we should ensure that any newcomer onboarding experiences are welcoming, informative, easy to read, and correctly reflect how our communities work.  The actual materials we share (or don't share in any obvious way) during onboarding vary quite a lot - partly because the people inviting newcomers are volunteers from different project or Foundation cultures too.

Users are the newcomers here: someone being elected as a committer, PMC member, or the like; Owners are the people managing the [VOTE] process and actually using tool(s) to create the new committer account, or are otherwise people already in communities responsible for any official outreach to the newcomer(s).

Improvement Recommendations

  • Include an explanatory publicly-accessible URL in every template email, so it's easier to keep the documentation someone reads when onboarding updated. Stable URLs on websites can be found through searching and can be referred to from other docs; most template emails are hidden away or are part of tooling.
  • Include as much context as practical in any onboarding-related email.  For example, for ICLA / new account emails, ensure the PMC and any other data is included in each kind of email (either to the new user or to owner/existing PMC) along with explicit instructions that match any tooling.
  • Review all onboarding emails for clarity and readability from the perspective of a newcomer to the ASF.
  • Review all docs linked from onboarding emails for clarity and readability, and especially consistency with emails and other tooling.
  • Ensure all emails during the ICLA → new committer process are consistent, from the Secretary, a PMC, or any other roles.

Secretary Workbench Tool

The Secretary uses a Whimsy tool to process incoming signed ICLA, CCLA, software grant, and other signed documents.  These tasks are done by the Secretary, although they often occour during a larger process of a PMC electing a new committer (where the PMC also communicates with the newcomer).  The Secretary tool organizes metadata, checks in documents, and automatically emails ACK/NAK to the submitter.  Depending on the action, the Secretary may also email a PMC, root@, or others to take action (like then creating a committer account).  Emails are very simple, and only include generic how-to links.

Workbench templates directory of *.erb

Template email for incomplete docs: https://github.com/apache/whimsy/blob/master/www/secretary/workbench/templates/incomplete.erb

Dear <%= @email.display_names.join(', ') %>,

We received this document but we cannot file it as is.
<%= @missing_items %>
Please fill all required fields and resubmit all pages
to secretary@apache.org
https://www.apache.org/licenses/#submitting
Warm Regards,

<%= @sig %>

Sign ICLA

Newcomers sign ICLAs, either unprompted, requested during a project review of a patch or pull request, or during the committer account creation process.  The Secretary handles ACK/NAK of the ICLA itself, and may request account creation, but not other parts of the process.

User Docs https://www.apache.org/licenses/contributor-agreements.html#submitting  This is just a physical how-to of the format, signatures, where to email; it doesn't explain the bigger process or aspects.

User ACK Email  The Secretary sends a template email (see above) to acknowledge receipt of the signed document; actual template depends if the ICLA was for a specific PMC or if the account has already been created.

New Committer Account

Owner Docs  https://apache.org/dev/pmc.html#newcommitter /dev/pmc guide includes a number of different special cases and considerations related to the PMC's process of adding a new committer.

Owner Tool https://whimsy.apache.org/officers/acreq.cgi Whimsy has a Members/Officers-only helper tool that organizes part of the account creation request process. This tool sends a simple form-like email to root@ and others requesting the account.

User ACK Email  The Secretary sends (see above) an ACK if an ICLA is being submitted during the process, both to the submitter and possibly the PMC.

User ACK Email Infra sends an email to the new user once their account is created.  This includes general information about how to manage their committer account, but not information about the project(s) they might have karma on.  https://svn.apache.org/repos/infra/infrastructure/trunk/tools/new_account_creation/mailer/account-welcome.ezt 

Owner ACK Email Infra sends an email to the PMC requesting a new committer in some cases, letting them know they might need to grant additional karma.  https://svn.apache.org/repos/infra/infrastructure/trunk/tools/new_account_creation/mailer/account-project.ezt

Existing Committer, Added To New Project

Owner Docs https://apache.org/dev/pmc.html#karma. PMC Chairs (officers or Members) can use Whimsy roster tooling to add permissions to existing committer accounts.  Whimsy sents out simple ACK emails to the project that such-and-such user was added/removed.

Owner ACK Email Infra may send notification to the PMC that a new committer was added with karma (? not sure about this process?)

New PMC Member

Owner Docs https://apache.org/dev/pmc.html#newpmc The PMC guide steps through the NOTICE steps and updating the roster, and then as an aside mentions how to actually invite the new PMC member and that "New PMC members are required to read the PMC Branding Responsibilities".

There is no specific ACK or invitation email template, so this varies widely by PMC Chair.

New PMC Chair

See improvement plan - done!

Owner Docs https://apache.org/dev/pmc.html#newchair The guide explains briefly how to use Whimsy to submit the chair change resolution.  It also includes apparently outdated instructions to update the /foundation/ web page listing all VPs.

Owner Tool Whimsy's chair change template, accessible from Add Item to an agenda. 

User ACK Email The Secretary uses Whimsy after a meeting's conclusion to send a brief email to new Chairs cc: board@ welcoming to officer position.  https://github.com/apache/whimsy/blob/master/www/board/agenda/views/actions/todos.json.rb The email includes a link to the useful if wordy actual introduction/requirements of a VP position: https://svn.apache.org/repos/private/foundation/officers/advice-for-new-pmc-chairs.txt


There are also ASF-private onboarding processes for Membership, some Officers, and Directors not covered here.

Other Source URLs About Onboarding

Onboarding?TopicRoleDescriptionURL / Directory
Sign ICLAHowto UserwebpageHow To submit ICLA and related docushttps://www.apache.org/licenses/contributor-agreements.html#submitting
Howto OwnerNew AccountwebpageHow To setup new committer accounts; Links to general CLAs page: https://apache.org/licenses/#clashttps://apache.org/dev/pmc.html#newcommitter
Howto OwnerNew AccountwebpageHow To setup new committer accounts.https://infra.apache.org/managing-committers.html
Howto OwnerNew AccountwebpageTool & Email: to PMC, root about newly requested accounthttps://whimsy.apache.org/officers/acreq.cgi
To: New PMC ChairNew ChairsecretaryEmail: To new PMC Chair(s)https://github.com/apache/whimsy/blob/master/www/board/agenda/views/actions/todos.json.rb
New PMC ChairNew ChairsecretaryLink included in email to new PMC VPs/Chairshttps://svn.apache.org/repos/private/foundation/officers/advice-for-new-pmc-chairs.txt (ASF private link)
Howto OwnerNew CommitterwebpageHow To add new committers to projecthttps://apache.org/dev/pmc.html#karma
Howto OwnerNew CommitterwebpageHow To add new committers to projecthttps://apache.org/dev/pmc.html#SVNaccess
Howto UserNew CommitterwebpageInfo for new committers, linked from some placeshttps://infra.apache.org/committers.html
Howto UserNew CommitterwebpageInfo for new committers, linked from some placeshttps://infra.apache.org/new-committers-guide.html
Howto OwnerNew PMCwebpageIncludes text saying "New PMC members are required to read the PMC Branding Responsibilities." No template for onboarding providedhttps://apache.org/dev/pmc.html#newpmc
To: rootNew AccountsecretaryEmail: [FORM] account request...https://github.com/apache/whimsy/blob/master/www/secretary/workbench/templates/acreq.erb
To: SubmitterNew AccountsecretaryACK ICLA, no account made because not asked by PMChttps://github.com/apache/whimsy/blob/master/www/secretary/workbench/templates/icla.erb
To: SubmitterNew AccountsecretaryACK additional ICLA, with reminder how to reset password for idhttps://github.com/apache/whimsy/blob/master/www/secretary/workbench/templates/icla2.erb
To: SubmitterNew AccountsecretaryNAK document submitted was incomplete, links: https://www.apache.org/licenses/#submittinghttps://github.com/apache/whimsy/blob/master/www/secretary/workbench/templates/incomplete.erb
To: SubmitterNew AccountsecretaryNAK doc because no public key foundhttps://github.com/apache/whimsy/blob/master/www/secretary/workbench/templates/pubkey.erb
To: SubmitterNew AccountsecretaryNAK ICLA because copy already found; talk to PMC with questionshttps://github.com/apache/whimsy/blob/master/www/secretary/workbench/templates/resubmit.erb
To: Submitter, also to dev@projectNew CommitterPMC membersComDev site (not linked elsewhere) provides some sample emails to send both to a new committer as well as other template emails during the whole vote - create - announce process.https://community.apache.org/newcommitter.html#committer-invite-template
To: SubmitterNew CommittersecretaryACK ICLA, account was requested, wait; links https://www.apache.org/foundation/how-it-works.html#developershttps://github.com/apache/whimsy/blob/master/www/secretary/workbench/templates/icla-account-requested.erb
To: SubmitterNew CommittersecretaryACK ICLA, account not requested, tells to ask PMC for help with getting allowable ID namehttps://github.com/apache/whimsy/blob/master/www/secretary/workbench/templates/icla-invalid-id.erb
To: SubmitterNew CommittersecretaryACK ICLA, please ask your PMC to complete making your IDhttps://github.com/apache/whimsy/blob/master/www/secretary/workbench/templates/icla-pmc-notified.erb



  • No labels

1 Comment

  1. Feedback from a PMC chair on creating new committer accounts, when asked if the email they got was useful:

    Yes and no.  Here is what was sent to me:

    The ApacheID ‘newid’ was created for [NewCommitter] as requested by this PMC. The account has been added to the ‘ASFProject’ LDAP group as well as the ‘committers’ LDAP group for you.Please grant additional karma to the projects in your domain you wish the user to have commit to.Only PMC chairs can grant karma. If needed, please post to the general@/dev@/private@ list of your project asking for someone with sufficient karma to grant access to ‘newid’.


    The above message is cryptic, especially to someone like myself who is not an expert in Apache’s backend.  I do understand that LDAP manages membership into groups and [NewCommitter] was assigned to the ASFProject project as a committer.  All that means to me is that when I look on Whimsy, I see his name as a committer on my project. 

    What the messages does not say, but should have said was something like : “As a committer, [NewCommitter] has already been granted the standard karma for committers on the ASFProject Project.”Then the next sentence would have made much more sense: “Please grant additional karma…”  It would have given me the clue that I don’t need to go figure out how to grant him the basic karma of a committer.  Which is what I did, and that led me down this rat hole of outdated documents about how to grant karma. 

    These outdated documents ALL say that after “root” has created an account for the new committer it is the responsibility of the PMC-chair to grant karma to the new committer.  Reinforcing the assumption I made from the letter, that [NewCommitter] would not have any access to project resources until I went through the process of granting him karma.  Which was false.

    Beyond cleaning up the mess of the documents giving instructions on how to bring on a new committer, there needs to be a way for me (as PMC-Chair ) to easily verify what karma he has already been given.  And I could not find any way to do that.  So I was totally in the dark about what karma he has been granted and whether I have fulfilled my job responsibilities.

    So the answer to your question:
    The actual email was enough to get me started down a rat hole!I probably spent well over an hour searching and reading conflicting and outdated documents and links that went nowhere, only to find out in the end that he was already granted the karma that he needs.