.. _community: ++++++++++++++++ Python community ++++++++++++++++ *Come for the Language, Stay for the Community* -- `Brett Cannon (and Naomi Ceder) `_ *Pull requests can be like someone trying to give you a puppy you didn't ask for; they mean well, but they can forget a puppy is a decade-or-more commitment and you just don't like the puppy.* -- `Brett Cannon `_ *Maintaining an open-source project is like being a Flight Attendant for an airline where all tickets are free and the majority of customer surveys offer suggestions on how to fly the airplane.* -- `Kelsey Hightower `_ *Having a great language is... great, but having a community around it gives you a sense of belonging, which is one of the most basic instincts and desires we have as animals.* -- Sawyer X (Perl 5 maintainer), `Pragmatic Perl Interviews `_, May 2013 *"When you choose a language, you're choosing more than a set of technical trade-offs-you're choosing a community."* -- `Joshua Bloch `_. ("Coders at Work: Reflections on the Craft of Programming". Book by Peter Seibel, 2009.) See also ======== * :ref:`Diversity ` * :ref:`Mentoring ` * :ref:`Communication Channels ` * :ref:`CPython Core Developers ` Talks ===== * `Setting expectations for open source participation `__ by Brett Cannon (September 2018) * `The give and take of open source `_ by Brett Cannon, JupyterCon, August 2017 * `Dial M For Mentor PyCon 2017 `_ by Mariatta Wijaya, Pycon US, May 2017 * `Come for the Language, Stay for the Community `_ by Naomi Ceder, EuroPython 2016 Documentation ============= * https://devguide.python.org/ * http://github.com/python/devguide/ * https://github.com/python/devguide/issues/120 * http://cpython-core-tutorial.readthedocs.io/ Work In Progress ================ * `Getting along in the Python community `_ by Guido van Rossum and Brett Cannon (May 2018): When someone is having an emotional response to a post, they should wait to respond. Guido: *"Sitting on your hands is often a good response"*. * Reserve easy issues to non-core developers: `[python-committers] Please stop fixing easy issues right now! Leave them as exercices to newcomes `_ * `RFC: Process to become a core developer `_ * Email templates: * `Bug triage promoted `_ * `Core developer promoted `_ Ideas ===== * Organize mentoring? Make it public? List documentations for mentors? * Django CoC: procedure to report abuse * Thanks.Python.org - clone of https://thanks.rust-lang.org/ but with snakes 🐍 and even cuter emojis! * Tooling to detect active contributors: number of commits, emails, reviews, etc. Is it doable? * Statistics on GitHub reviews: * https://developer.github.com/v3/pulls/reviews/#list-reviews-on-a-pull-request * https://github.com/joacim-boive/github-statistics # Chrome extension * gamification: public top 5? * The idea is to motivate the contributors: one way is "self-motivation" (i.e. streak counter, daily/weekly/monthly goals, etc). Another is "multiplayer" (e.g. leaderboards and other "competitive" aspects). * Give badges depending on the number of posted bugs, PR, emails, etc.? * https://twistedmatrix.com/highscores/ * Bot to thanks automatically new contributors with cute emojis? "Congrats 🙌 for your first PR merged into CPython 🐍!" (do email notifications like emojis?) * Create subteams: * IDLE * asyncio * Documentation * Windows * Workgroup Community // core-workflow * XXX: need a bot on GitHub to restrict permissions to files/directories? * Missing in action: drop core dev for inactive developers? Issues when dealing with people =============================== * https://geekfeminism.wikia.org/wiki/Five_Geek_Social_Fallacies * https://geekfeminism.wikia.org/wiki/Ostracism_is_evil * https://geekfeminism.wikia.org/wiki/Missing_stair * https://en.wikipedia.org/wiki/Missing_stair * https://en.wikipedia.org/wiki/Gaslighting Links ===== * https://public.etherpad-mozilla.org/p/help-cpython-newcomers * http://teachingopensource.org/