2024-04-23 04:36:11 +08:00
|
|
|
# Advocacy Ambassador program
|
|
|
|
|
|
|
|
Node.js aims to support and encourage developers and developer
|
|
|
|
advocates to promote Node.js as a project and to help communicate
|
|
|
|
key messages to their constituencies.
|
|
|
|
|
|
|
|
The ambassador program does that by:
|
|
|
|
|
|
|
|
* Maintaining an up-to-date set of messages that the Node.js maintainers would like ambassadors
|
|
|
|
to promote. These will be documented in the nodejs/ambassadors repository.
|
|
|
|
* Maintaining an up-to-date set of topics on which additional content
|
|
|
|
would benefit the community. These will be documented in the
|
|
|
|
nodejs/ambassadors repository.
|
|
|
|
* Providing a space for collaborators to share new topics/features they
|
|
|
|
are working on when they would be happy for ambassadors to help share and get
|
|
|
|
early feedback.
|
|
|
|
* Helping ambassadors promote content that aligns with the
|
|
|
|
messages and topics defined.
|
|
|
|
* Advocating for ambassadors to be part of the OpenJS speakers bureau, even if the
|
|
|
|
ambassador is not otherwise an active member of the project itself.
|
2024-11-25 16:41:12 +08:00
|
|
|
* Each ambassador could add a maximum of three links to resources to learn Node.js
|
|
|
|
on a dedicated page on the main Node.js website. At least one of those must be a
|
|
|
|
free resource. The Node.js TSC members could ask for coupon codes to verify the
|
|
|
|
material if they so decide.
|
2024-04-23 04:36:11 +08:00
|
|
|
|
|
|
|
## Ambassadors nominations
|
|
|
|
|
|
|
|
Any member of the Node.js organization may nominate an ambassador.
|
|
|
|
The Technical Steering Committee (TSC) will review/approve ambassadors.
|
|
|
|
|
|
|
|
In the initial phase of the program:
|
|
|
|
|
|
|
|
* There will be a maximum of 4 ambassadors.
|
|
|
|
* The term will be for the calendar year. After a year, ambassadors automatically
|
|
|
|
drop out of the ambassador list and must be re-nominated.
|
|
|
|
* Ambassadors will be documented on the nodejs/ambassadors `README.md`.
|
|
|
|
|
|
|
|
The TSC may remove an ambassador for any reason,
|
|
|
|
including promoting content misaligned with the project.
|
|
|
|
|
|
|
|
Members of the Node.js organization can nominate ambassadors by opening
|
|
|
|
a discussion issue with the nomination in
|
|
|
|
[nodejs/collaborators](https://github.com/nodejs/collaborators/)
|
|
|
|
titled `Nomination X to be an Ambassador`, where X is the name of the person
|
|
|
|
being nominated.
|
2024-10-08 19:41:15 +08:00
|
|
|
If there is no objection within 14 days, the nomination is approved.
|
|
|
|
|
|
|
|
## Onboarding
|
|
|
|
|
|
|
|
To onboard an ambassador, a member of the TSC will:
|
|
|
|
|
2024-10-14 03:14:48 +08:00
|
|
|
* \[ ] Add the ambassador to the nodejs/ambassadors team.
|
|
|
|
* \[ ] Add the ambassador to the nodejs/ambassadors `README.md`.
|
|
|
|
* \[ ] Add the ambassador to the OpenJS Slack channel.
|
2024-04-23 04:36:11 +08:00
|
|
|
|
|
|
|
## Reviewing content
|
|
|
|
|
|
|
|
Ambassadors are asked to share links to new content before asking
|
|
|
|
for the content to be promoted. The goal is to provide the opportunity
|
|
|
|
for collaborators to help improve content as opposed to a detailed
|
|
|
|
nitpick review.
|
|
|
|
|
|
|
|
This is done by opening an issue in the nodejs/ambassadors
|
|
|
|
repository, which limits access to members of the Node.js
|
|
|
|
organization. The issue may include the link to existing published
|
|
|
|
content or a draft of the content itself.
|
|
|
|
|
|
|
|
Interested members of the Node.js organization may comment
|
|
|
|
in the issue and the ambassadors are expected to
|
|
|
|
consider those suggestions and update the content when they feel it
|
|
|
|
is appropriate.
|
|
|
|
|
|
|
|
Explicit approval is not required in the issue (i.e. if there is no
|
|
|
|
input, that's OK), but review comments should be addressed before
|
|
|
|
requesting promotion.
|
|
|
|
|
|
|
|
## Expectations on Ambassadors
|
|
|
|
|
|
|
|
Ambassadors are expected to engage both within the project and externally
|
|
|
|
in a manner that is consistent with the project's
|
|
|
|
[Code of Conduct](https://github.com/nodejs/admin/blob/main/CODE_OF_CONDUCT.md)
|
|
|
|
as well as the additional expectations outlined in
|
|
|
|
[Member Expectations](https://github.com/nodejs/admin/blob/main/MemberExpectations.md).
|
|
|
|
|
|
|
|
## Promoting content
|
|
|
|
|
|
|
|
We trust ambassadors to only request promotion of content that lines
|
|
|
|
up with the messages and topics outlined, that this content does not overly
|
|
|
|
market their employer or product/business, and that they have followed the review
|
|
|
|
process. An ambassador can request promotion of content in the following ways:
|
|
|
|
|
|
|
|
* Requesting that a post be reposted by the Node.js account on a social media platform.
|
|
|
|
* @-mentioning the nodejs/ambassadors team to ask other ambassadors to repost.
|
|
|
|
* Posting a link to the content in the "what's new" issue in nodejs/ambassadors
|
|
|
|
so that it goes out on the news feed.
|
|
|
|
|
|
|
|
Foundation staff will repost the social media post
|
|
|
|
without any need for validation based on the request coming from
|
|
|
|
an ambassador. These requests can be made through the existing social channel
|
|
|
|
in the OpenJS Slack. For that reason and for communication purposes and
|
|
|
|
collaboration opportunities, ambassadors should be members of the
|
|
|
|
[OpenJS Slack](https://slack-invite.openjsf.org/).
|
2024-11-14 05:50:32 +08:00
|
|
|
|
|
|
|
## Messages and topics to promote
|
|
|
|
|
|
|
|
### How to add messages or topics to promote
|
|
|
|
|
|
|
|
Messages or topics that ambassadors are asked to promote are added to this
|
|
|
|
document in the [Current messages for promotion](#current-messages-for-promotion)
|
|
|
|
section through the standard PR process except that they should be open
|
|
|
|
for 7 days before landing and should include and at mention to the
|
|
|
|
nodejs/TSC for awareness. They should be removed through the same process
|
|
|
|
when no longer relevant.
|
|
|
|
|
|
|
|
### Current messages for promotion
|
|
|
|
|
|
|
|
#### Sample message (Leave this one at the top)
|
|
|
|
|
|
|
|
##### Goal
|
|
|
|
|
|
|
|
The goal is to raise awareness of XYZ in the JavaScript ecosystem.
|
|
|
|
|
|
|
|
#### Related Links
|
|
|
|
|
|
|
|
List of links with more information about the topic to provide brackground
|
|
|
|
or the information to be shared.
|
|
|
|
|
|
|
|
#### Project contacts
|
|
|
|
|
|
|
|
Add a list of GitHub handles for those within the project that
|
|
|
|
have volunteered to be contacated when necessary by ambassadors
|
|
|
|
to get more info about the message to be promoted.
|
2024-11-30 03:56:17 +08:00
|
|
|
|
|
|
|
#### Node.js is a great choice for a JavaScript runtime
|
|
|
|
|
|
|
|
##### Goal
|
|
|
|
|
|
|
|
Highlight the benefits of chosing Node.js as your backend JavaScript runtime. Focus on what is great
|
|
|
|
about Node.js without drawing comparisons to alternatives. We don't want to say negative things about
|
|
|
|
other options, only highlight what is great about Node.js as a choice.
|
|
|
|
|
|
|
|
Some of the things to highlight include:
|
|
|
|
|
|
|
|
* How widely it is used (you never get fired for chosing Node.js).
|
|
|
|
* The openess of the project. It is part of the OpenJS Foundation and it's governance is set up to avoid
|
|
|
|
any one company from dominating the project. Decisions are made by the collaborators (of which there are quite
|
|
|
|
a few) versus a small number of people.
|
|
|
|
* It has predictable and stable releases and has delivered on the release schedule since 2015.
|
|
|
|
* It was a well defined security release process and manages security releases well.
|
|
|
|
* As the defacto standard, it has the highest likelihood of being supported for a given package on npm.
|
|
|
|
* It is not dependent on any one company for its continued existence reducing risk of using it.
|
|
|
|
* The large number of platforms supported.
|
|
|
|
* Asynchronous non-blocking i/o architecture drives high transactional throughput, making it ideal for web workloads.
|
|
|
|
* Single threaded programming model enables very low resource consumption, making it ideal for containerised workloads.
|
|
|
|
* Highly vibrant ecosystem with enterprise support from many vendors.
|
|
|
|
|
|
|
|
#### Related Links
|
|
|
|
|
|
|
|
* <https://github.com/nodejs/release>
|
|
|
|
* <https://github.com/nodejs/node/blob/main/doc/contributing/security-release-process.md>
|
|
|
|
* <https://github.com/nodejs/TSC/blob/main/TSC-Charter.md>
|
|
|
|
* <https://github.com/mhdawson/presentations/blob/main/2024/NodeConfEU_2024-Node.js_whats_next.pdf>
|
|
|
|
for slide usage and topping recent surveys.
|
|
|
|
|
|
|
|
#### Project contacts
|
|
|
|
|
|
|
|
* @mhdawson
|