|
| 1 | +.. _communications-guidelines: |
| 2 | + |
| 3 | +======================== |
| 4 | +Communication guidelines |
| 5 | +======================== |
| 6 | + |
| 7 | +These guidelines are applicable when acting as a representative of Matplotlib, |
| 8 | +for example at sprints or when giving official talks or tutorials, and in any |
| 9 | +community venue managed by Matplotlib. |
| 10 | + |
| 11 | + |
| 12 | +.. _communication-channels: |
| 13 | + |
| 14 | +Official communication channels |
| 15 | +=============================== |
| 16 | +The following venues are managed by Matplotlib maintainers and contributors: |
| 17 | + |
| 18 | +* library and docs: https://github.com/matplotlib/matplotlib |
| 19 | +* forum: https://discourse.matplotlib.org/ |
| 20 | +* chat: `https://matrix.to/#/#matplotlib:matrix.org <https://matrix.to/#/#matplotlib:matrix.org>`_ |
| 21 | +* blog: https://blog.scientific-python.org/ |
| 22 | + |
| 23 | +.. _social-media: |
| 24 | + |
| 25 | +Social media |
| 26 | +------------ |
| 27 | + |
| 28 | +Active social media |
| 29 | +^^^^^^^^^^^^^^^^^^^ |
| 30 | + |
| 31 | +* https://twitter.com/matplotlib |
| 32 | +* https://instagram.com/matplotart/ |
| 33 | + |
| 34 | +Official accounts |
| 35 | +^^^^^^^^^^^^^^^^^ |
| 36 | +* https://bsky.app/profile/matplotlib.bsky.social |
| 37 | +* https://fosstodon.org/@matplotlib |
| 38 | +* https://www.tiktok.com/@matplotart |
| 39 | +* https://www.youtube.com/matplotlib |
| 40 | + |
| 41 | + |
| 42 | +.. _mailing-lists: |
| 43 | + |
| 44 | +Mailing lists |
| 45 | +------------- |
| 46 | + |
| 47 | +* ` [email protected] < https://mail.python.org/mailman/listinfo/matplotlib-announce>`_ |
| 48 | +* ` [email protected] < https://mail.python.org/mailman/listinfo/matplotlib-users>`_ |
| 49 | +* ` [email protected] < https://mail.python.org/mailman/listinfo/matplotlib-devel>`_ |
| 50 | + |
| 51 | +.. _social-media-coordination: |
| 52 | + |
| 53 | +Social media coordination |
| 54 | +------------------------- |
| 55 | +* Team mailing list: [email protected] |
| 56 | +* Public chat room: `https://matrix.to/#/#matplotlib_community:gitter.im <https://matrix.to/#/#matplotlib_community:gitter.im>`_ |
| 57 | + |
| 58 | + |
| 59 | +Maintenance |
| 60 | +----------- |
| 61 | + |
| 62 | +If you are interested in moderating the chat or forum or accessing the social |
| 63 | +media accounts: |
| 64 | + |
| 65 | +* Matplotlib maintainers should reach out to the `community-manager`_. |
| 66 | + |
| 67 | +* Everyone else should send an email to [email protected]: |
| 68 | + |
| 69 | + * Introduce yourself - github handle and participation in the community. |
| 70 | + * Describe the reason for wanting to moderate or contribute to social. |
| 71 | + |
| 72 | + |
| 73 | +Content guidelines |
| 74 | +================== |
| 75 | + |
| 76 | +Communication on official channels, such as the Matplotlib homepage or on |
| 77 | +Matplotlib social accounts, should conform to the following standards. If you |
| 78 | +are unsure if content that you would like to post or share meets these |
| 79 | +guidelines, ask on the :ref:`social-media-coordination` channels before posting. |
| 80 | + |
| 81 | +General guidelines |
| 82 | +------------------ |
| 83 | + |
| 84 | +* Focus on Matplotlib, 3rd party packages, and visualizations made with Matplotlib. |
| 85 | +* These are also acceptable topics: |
| 86 | + |
| 87 | + * Visualization best practices and libraries. |
| 88 | + * Projects and initiatives by NumFOCUS and Scientific Python. |
| 89 | + * How to contribute to open source projects. |
| 90 | + * Projects, such as scientific papers, that use Matplotlib. |
| 91 | + |
| 92 | +* No gratuitous disparaging of other visualization libraries and tools, but |
| 93 | + criticism is acceptable so long as it serves a constructive purpose. |
| 94 | + |
| 95 | +* Follow communication best practices: |
| 96 | + |
| 97 | + * Do not share non-expert visualizations when it could cause harm: |
| 98 | + |
| 99 | + * e.g. https://twitter.com/matplotlib/status/1244178154618605568 |
| 100 | + |
| 101 | + * Clearly state when the visualization data/conclusions cannot be verified. |
| 102 | + * Do not rely on machine translations for sensitive visualization. |
| 103 | + |
| 104 | +* Verify sourcing of content (especially on instagram & blog): |
| 105 | + |
| 106 | + * Instagram/blog: ensure mpl has right to repost/share content |
| 107 | + * Make sure content is clearly cited: |
| 108 | + |
| 109 | + * e.g. a tutorial reworking an example must credit the original example |
| 110 | + |
| 111 | +* Limited self/corporate promotion is acceptable. |
| 112 | + |
| 113 | + * Should be no more than about a quarter of the content. |
| 114 | + |
| 115 | +Visual media guidelines |
| 116 | +----------------------- |
| 117 | + |
| 118 | +Visual media, such as images and videos, must not violate the |
| 119 | +:ref:`code of conduct <code_of_conduct>`, nor any platform's rules. |
| 120 | +Specifically: |
| 121 | + |
| 122 | +* Visual media must conform to the guidelines of all sites it may be posted on: |
| 123 | + |
| 124 | + * https://help.twitter.com/en/rules-and-policies/twitter-rules |
| 125 | + * https://help.instagram.com/477434105621119 |
| 126 | + |
| 127 | +* Emphasize the visualization techniques demonstrated by the visual media. |
| 128 | +* Clearly state that sharing is not an endorsement of the content. |
| 129 | + |
| 130 | + * e.g. bitcoin related visualizations |
| 131 | + |
| 132 | +Accessibility |
| 133 | +^^^^^^^^^^^^^ |
| 134 | + |
| 135 | +Visual media in communications should be made as accessible as possible: |
| 136 | + |
| 137 | +* Add alt text to images and videos when the platform allows: |
| 138 | + |
| 139 | + * `alt text for data viz <https://medium.com/nightingale/writing-alt-text-for-data-visualization-2a218ef43f81>`_ |
| 140 | + * `general alt text guide <https://webaim.org/techniques/alttext/>`_ |
| 141 | + |
| 142 | +* Warn on bright, strobing, images & turn off autoplay if possible. |
| 143 | +* For images and videos made by the social media team: |
| 144 | + |
| 145 | + * Make graphic perceivable to people who cannot perceive color well due to |
| 146 | + color-blindness, low vision, or any other reason. |
| 147 | + |
| 148 | + * Do not make bright, strobing images. |
| 149 | + * More guidelines at https://webaim.org/techniques/images/. |
| 150 | + |
| 151 | + |
| 152 | +Social media |
| 153 | +============ |
| 154 | + |
| 155 | +Please follow these guidelines to maintain a consistent brand identity across |
| 156 | +platforms. |
| 157 | + |
| 158 | +Persona |
| 159 | +------- |
| 160 | +On social media, Matplotlib: |
| 161 | + |
| 162 | +* Acts as a sentient visualization library, so talks about itself as a we, us, |
| 163 | + our, and it. Avoids talking about itself in the 3rd person. Never uses 1st person. |
| 164 | +* Is very earnest, eager to please, and aims to be patient & painfully oblivious |
| 165 | + to snark and sarcasm. |
| 166 | +* Gets over-excited over shiny visualizations - lots of emojis and the like - |
| 167 | + and encourages folks to share their work. |
| 168 | +* Highlights various parts of the library, especially the more obscure bits and |
| 169 | + bobbles. |
| 170 | +* Acknowledges that it is a sometimes frustrating tangle of bits & bobbles that |
| 171 | + can confuse even the folks who work on it & signal boosts their confuzzlment. |
| 172 | + |
| 173 | + |
| 174 | +Behavior |
| 175 | +-------- |
| 176 | +When acting as a representative of the library, keep responses polite and assume |
| 177 | +user statements are in good faith unless they violate the :ref:`code of conduct <code_of_conduct>`. |
| 178 | + |
| 179 | +Social graph |
| 180 | +------------ |
| 181 | + |
| 182 | +Only follow **organizations and projects**, do not follow individual accounts for |
| 183 | +any reason, even maintainers/project leads/famous Python people! |
| 184 | + |
| 185 | +Following these types of accounts is encouraged: |
| 186 | + |
| 187 | +* NumFocus and Scientific Python projects |
| 188 | +* 3rd party packages |
| 189 | +* Visualization related projects and organizations |
| 190 | +* Open Source community projects |
| 191 | +* Sponsors |
| 192 | + |
| 193 | +Recurring campaigns |
| 194 | +------------------- |
| 195 | + |
| 196 | +Typically the social media accounts will promote the following: |
| 197 | + |
| 198 | +* Matplotlib releases: |
| 199 | + |
| 200 | + * Highlight new features & major deprecations |
| 201 | + * Link to download/install instructions |
| 202 | + * Ask folks to try it out. |
| 203 | + |
| 204 | +* `third party packages <https://matplotlib.org/mpl-third-party/>`_ |
| 205 | +* NumFocus/Scientific Python/open source visualization project releases |
| 206 | +* GSOC/GSOD recruiting and progress |
| 207 | + |
| 208 | +Retired campaigns |
| 209 | +^^^^^^^^^^^^^^^^^ |
| 210 | +* John Hunter Excellence in Plotting, submission and winners |
| 211 | + |
| 212 | + |
| 213 | +Changing the guidelines |
| 214 | +======================= |
| 215 | + |
| 216 | +As the person tasked with implementing communications, the `community-manager`_ |
| 217 | +should be alerted to proposed changes to the communications guidelines. Similarly, |
| 218 | +specific platform guidelines (e.g. twitter, instagram) should be reviewed by the |
| 219 | +person responsible for that platform, when different from the community manager. |
| 220 | +If there is no consensus, decisions about communications guidelines revert to |
| 221 | +the community manager. |
| 222 | + |
| 223 | +.. _community-manager: https://matplotlib.org/governance/people.html#deputy-project-leads |
0 commit comments