Community Participation

Originally published in Python Magazine Volume 2 Issue 8 , August, 2008

Our authors are having an impact through their participation in
the global Python community, and we couldn’t be more proud to
support them.

One of my main motivations for becoming involved with Python Magazine
was to contribute back to the Python community that has provided so
much help to me in the past. I’ve had access to innumerable open
source programs and libraries, learned about algorithms and
development techniques from some of the best programmers around, and
received a good share of support in the form of bug reports and
patches for my own projects. All of that came from the Python
community, found first on Usenet, then mailing lists, and now blogs.
In return for all I’ve received, I want to turn this magazine into a
tool for exploring new ideas, promoting user group participation, and
supporting Python-based projects with exposure and publicity. I’m very
happy to say that, so far, those goals seem to be coming together
quite well.

MTA and Python Magazine are committed to supporting user groups and
encouraging active participation. I mentioned last month that we have
been running a subscription promotion, tied to user group membership.
The response has been excellent, with groups from all over the world
signing up. We’re also providing a user group discount rate to PyWorks
in November. There is an opportunity to do more to help encourage
growth of these groups, though. The community needs to develop ways to
exchange ideas for activities, presentations, and projects, and we
will be working with group organizers to foster that sort of
communication over the coming months. There is already a public
accessible list of local user groups on the wiki, and a
blog for publicizing group activities, but I’m interested in hearing
from you about what sorts of support you think would be helpful. Are
the biggest needs tools? Organizers? Or something else entirely?

Writing about Python and starting these sorts of discussions is not
the only way contributors to the magazine participate in the
community, of course.

Another of our missions is to publicize projects that are useful,
especially when more participation may be needed. The June cover story
by Grig Gheorghiu on Pybots is an excellent example. That article
caused Glyph Lefkowitz to initiate a discussion on the python-dev
mailing list about cleaning up the existing bots, and how to best
handle feedback from failed builds. The consensus was to have project
and individual bot maintainers report issues as they come up,
distributing the work of monitoring the tests to those most interested
in individual test cases. Check out the python-dev thread Community
buildbots and Python release quality metrics
for more details,
especially if you are able to help by running or monitoring a bot of
your own. I spent part of the last week setting up buildbot (the basis
of the pybots project) at my day job to run our own internal tests. To
my surprise, it has been a lot easier to configure than I thought it
would be given the number of features it provides, and I already have
a swiftly growing list of other tasks we want to automate with it.

Writing about Python and starting these sorts of discussions isn’t
the only way contributors to the magazine participate in the
community, of course. Most of us are programmers by day and contribute
to open source projects in our free time. This month, Associate Editor
Jesse Noller’s column recounts what he has learned about Python core
development from his efforts to integrate the multiprocessing
module (formerly known as processing) with the standard
library. Long time subscribers will have noticed a recurring theme in
our coverage of using threads vs. processes for parallelizing
applications. We have discussed the topic in several forms over the
past year, including explanations of the GIL and its impact as well as
several techniques to overcome perceived limitations. Because of his
background in massively parallel load testing Jesse has a lot
experience in this area and he was an excellent advocate for PEP 371,
“Addition of the multiprocessing package to the standard library”.
His hard work has paid off now that the new module is included in the
latest release of Python 2.6. Congratulations to Jesse and
processing‘s original author Richard Oudkerk!

If you have suggestions for ways Python Magazine can help your local
users group, or you just want to comment on or ask questions about an
article or column you’ve seen in Python Magazine, post a note in the
comments below.