doc/devel/communication_guide.rst
.. _communications-guidelines:
These guidelines are applicable when acting as a representative of Matplotlib, for example at sprints or when giving official talks or tutorials, and in any community venue managed by Matplotlib.
Our approach to community engagement is foremost guided by our :ref:mission-statement:
.. _communication-channels:
The Scientific Python community uses various communications platforms to stay updated on new features and projects, to contribute by telling us what is on their mind and suggest issues and bugs, and to showcase their use cases and the tools they have built.
The following venues are managed by Matplotlib maintainers and contributors:
https://matrix.to/#/#matplotlib:matrix.org <https://matrix.to/#/#matplotlib:matrix.org>_.. _social-media:
Active social media ^^^^^^^^^^^^^^^^^^^
Official accounts ^^^^^^^^^^^^^^^^^
.. _mailing-lists:
[email protected] <https://mail.python.org/mailman/listinfo/matplotlib-announce>_[email protected] <https://mail.python.org/mailman/listinfo/matplotlib-users>_[email protected] <https://mail.python.org/mailman/listinfo/matplotlib-devel>_.. _social-media-coordination:
https://matrix.to/#/#matplotlib_community:gitter.im <https://matrix.to/#/#matplotlib_community:gitter.im>_If you are interested in moderating the chat or forum or accessing the social media accounts:
Matplotlib maintainers should reach out to the community-manager_.
Everyone else should send an email to [email protected]:
Communication on official channels, such as the Matplotlib homepage or on
Matplotlib social accounts, should conform to the following standards. If you
are unsure if content that you would like to post or share meets these
guidelines, ask on the :ref:social-media-coordination channels before posting.
Focus on Matplotlib, 3rd party packages, and visualizations made with Matplotlib.
These are also acceptable topics:
No gratuitous disparaging of other visualization libraries and tools, but criticism is acceptable so long as it serves a constructive purpose.
Follow communication best practices:
Do not share non-expert visualizations when it could cause harm:
Clearly state when the visualization data/conclusions cannot be verified.
Do not rely on machine translations for sensitive visualization.
Verify sourcing of content (especially on instagram & blog):
Instagram/blog: ensure mpl has right to repost/share content
Make sure content is clearly cited:
Limited self/corporate promotion is acceptable.
Visual media, such as images and videos, must not violate the
:ref:code of conduct <code_of_conduct>, nor any platform's rules.
Specifically:
Visual media must conform to the guidelines of all sites it may be posted on:
Emphasize the visualization techniques demonstrated by the visual media.
Clearly state that sharing is not an endorsement of the content.
Accessibility ^^^^^^^^^^^^^
Visual media in communications should be made as accessible as possible:
Add alt text to images and videos when the platform allows:
alt text for data viz <https://medium.com/nightingale/writing-alt-text-for-data-visualization-2a218ef43f81>_general alt text guide <https://webaim.org/techniques/alttext/>_Warn on bright, strobing, images & turn off autoplay if possible.
For images and videos made by the social media team:
Make graphic perceivable to people who cannot perceive color well due to color-blindness, low vision, or any other reason.
Do not make bright, strobing images.
More guidelines at https://webaim.org/techniques/images/.
.. _social-media-brand:
Matplotlib aims for a single voice across all social media platforms to build and maintain a consistent brand identity for Matplotlib as an organization. This depersonalization is the norm on social media platforms because it enables constructive and productive conversations; People generally feel more comfortable giving negative and constructive feedback to a brand than to specific contributors.
The current Matplotlib voice and persona aims to be kind, patient, supportive and educational. This is so that it can de-escalate tensions and facilitate constructive conversations; being perceived as negative or argumentative can escalate very fast into long-lasting brand damage, being perceived as personal leads to aggression and accusations faster than an impersonal account, and being perceived as friendly and approachable leads to higher engagement. Instead of speaking with a directive authority, which can be intimidating and lead to negative engagement, it speaks as a peer or educator to empower participation. The current voice encourages more input from folks we engage with, and also makes it possible for folks who are not in the core team to participate in managing the account.
While the :ref:brand identity <social-media-brand> is casual, the showcased
content is high quality, peer-led resource building. Please follow these
guidelines to maintain a consistent brand identity across platforms.
On social media, Matplotlib:
When acting as a representative of the library, keep responses polite and assume
user statements are in good faith unless they violate the :ref:code of conduct <code_of_conduct>.
Only follow organizations and projects, do not follow individual accounts for any reason, even maintainers/project leads/famous Python people!
Following these types of accounts is encouraged:
Typically the social media accounts will promote the following:
Matplotlib releases:
third party packages <https://matplotlib.org/mpl-third-party/>_
NumFocus/Scientific Python/open source visualization project releases
GSOC/GSOD recruiting and progress
Retired campaigns ^^^^^^^^^^^^^^^^^
As the person tasked with implementing these guidelines, the community-manager_
should be alerted to proposed changes. Similarly, specific platform guidelines
(e.g. twitter, instagram) should be reviewed by the person responsible for that
platform, when different from the community manager. If there is no consensus,
decisions about guidelines revert to the community manager.
.. _community-manager: https://matplotlib.org/governance/people.html#deputy-project-leads