Why is Python’s community so important?
When you learn a new skill, you become aware of and a participant in the unique culture associated with that thing. The military, teachers, musicians and other vocations all have their own characteristic and immediately recognizable cultures. The same goes for programmers and different programming languages.
Happily, the Python community has an excellent reputation for being a friendly group of people who value openness, actively engage in outreach and give up their time for educational support. These are all attributes that make it easy for both teachers and students to get involved with Python’s inimitable culture. As Eben Upton from the Raspberry Pi Foundation mentioned, the Python community is “exactly the sort you want. Education is a core part of the community.”
Python programmers (variously called Pythonists, Pythonistas and/or Pythonauts) are also a well organized bunch and have created the Python Software Foundation (PSF) as a rallying point for the community. It also means that there is a legal entity with which governments, companies and other institutions can formally interact.
Here’s how the PSF describes itself:
The Python Software Foundation (PSF) is a volunteer led organization devoted to advancing open source technology related to the Python programming language. It qualifies under the US Internal Revenue Code as a tax-exempt 501(c)(3) scientific and educational public charity, and conducts its business according to the rules for such organizations.
The PSF was created to promote, protect, and advance the Python programming language and to support and facilitate the growth of a diverse and international community of Python programmers. This is achieved by supporting the development of the Python programming language itself (whose intellectual property belongs to the PSF), providing technical infrastructure for the Python community (such as servers, mailing lists and the Python website), running and supporting various international Python conferences (or Pycons,1 such as the one held in the UK mentioned in Chapter 2), and the giving of grants to individuals and organizations for projects related to the development of Python, Python-related technology, and educational resources.
Anyone who is a user or supporter of Python can join and volunteer as little or much as they see fit. The Python website and PSF should be your first port of call for information relating to the Python community. It includes the complete documentation for the language (and tutorials, too).
The PSF also hosts several mailing lists that cater to various locales and interests. For example, there is an education special interest group mailing list that you can join (the web page for the Edu-SIG also includes many useful links for resources and evidence of Python’s efficacy as an educational programming language).
Another important aspect of the PSF’s work is outreach and helping to make the community a welcoming place for newcomers—no matter their background, age or level of experience. This is manifested in several ways.
Conferences supported by the PSF must have a code of conduct that helps to promote and maintain the community’s reputation as a friendly, welcoming and dynamic group of people. Put simply, they help to make it clear that conference attendees are expected to treat each other in a way that reflects the widely held view that diversity and friendliness are strengths of the community to be celebrated and fostered.
The PSF awards grants for projects that promote Python, Python-related technology, educational programs and resources. This is an important mechanism for community-led support and development—if you have an idea for something to contribute that needs funding, you should apply (the process is easy and the board are responsive and helpful).
Like every international community of free software developers, many members collaborate over the Internet rather than in real life. As a result, conferences are an important part of the community because they literally bring people together. Friendships are strengthened, collaborators are found and ideas are debated. Code is furiously written during “code sprints” (intense days of group programming). There are also the usual conference events: talks, tutorials, dinners and keynote speeches.
More recently in the world of Python conferences, things have taken a decidedly educational turn. Since 2012, PyconUK has had teachers attend and give presentations. In 2013, PyconUK had a specialist education track for teachers and developers to come together and learn from each other. Since 2013, the education track at PyconUK has had a day set aside for kids to attend with their families. Next year, PyconUK expects about 50 teachers and 150 kids to attend over the course of two days during the main conference.
In North America, there has been a PyCon Education Summit for developers and teachers since 2013 (and since as early as 2003, there have been education-themed “open spaces”). Also in 2013, a kids’ track was initiated where developers volunteer their time to teach young coders and help them take their first steps into the world of Python.
Pycon Australia will hold their first education “miniconf” in 2015 and evidence from discussions at Europython 2014 suggests that many European countries are in the early stages of making their own national conferences education-friendly with tracks for teachers and/or students.
Such educational efforts are not limited to conference tracks for teachers and kids. Underrepresented groups in the wider technology sector have had their educational needs met by the Python community: PyLadies is an international network of chapters providing mentorship and support for women who want to take a more active role in the Python community, Django Girls organizes free Python and Django workshops for women, and Trans*Code runs hack days that draw attention to transgender issues while focusing on introductory programming courses for those not currently working in technology.
The Python community is active, engaged and enthusiastic.
Why not get involved?