[python-advocacy] Penguin Day DC

A.M. Kuchling amk at amk.ca
Sun Apr 8 16:26:35 CEST 2007


Today I went to <a
href="http://penguinday.aspirationtech.org/index.php/Penguin_Day_Agenda">Penguin
Day DC</a> wearing my Python Software Foundation outreach hat.  About
80 people attended Penguin Day, which was held on the Saturday after
the 3-day <a href="http://nten.org/ntc">Non-Profit Technology
Conference</a>, and was organized by the 
<a href="http://www.nosi.net/">NonProfit Open Source Initiative</a>,
which encourages the use of open source software in the nonprofit sector.

To some degree the PSF is at the wrong level for this audience.  The
Penguin Day attendees are interested in using open source technology
for their non-profit organization, but most of them are not developers
and are not interested in programming but in applications that may
happen to be written in Python.  They're often interested in CMSes so
Plone was mentioned a lot, for example.

Non-profits seem to care most about two areas:
* Content management: Joomla and Drupal were the CMSes
  mentioned most often.
* Member management: discussion forums, mailing lists, member databases.
  (Most commonly used database: MS Access.)

A note on member management: lots of people recognized Mailman's name;
non-profits use a lot of mailing lists and spend a lot of time
gardening and moderating them.  Later I'll record some suggestions for
Mailman.

Non-profits are concerned about:
* cost
* ability to maintain applications and to keep them running reliably.
* finding people to work on their applications (both paid consultants/staff
  and to a lesser degree volunteers).

Reasons for not using open source include:
* Commercial software makes it very easy to get a non-profit price.
  There's suspicion of free software; if it's free, how trustworthy can it be?
* Fear that the software, or the organization/community surrounding it,
  will vanish.  Companies are thought to be more stable.
* Lack of knowledge about the open source alternatives.
* Documentation not good enough; missing intermediate documentation
  (between beginner & expert level) was mentioned.
* Case studies are very helpful, not so much as a blueprint
  but to reassure managers that the software is a safe choice.

Case studies should:
* Mention resulting cost.
* Mention ancillary requirements such as training.
* Should cover the whole life cycle from making the decision through
  implementation, deployment, and lessons learned.
* Should mention errors or problems that were encountered and solved.

One interesting thing: few attendees seem to listen to podcasts (too
time-consuming).  Webinars (presentations + audio) were preferred
because you learn more and can use just the audio or just the slides.

There was a reference to some Mark Shuttleworth-related group 
(Canonical?  Shuttleworth Foundation?) that made seven half-hour 
programs about open source.  Anyone know anything about this?

Spectrograms
-------------------

As an initial getting-familiar step, all the attendees introduced
themselves.  There were people from DC, California, New York, Boston,
North Carolina, Texas, Toronto, Belgium, Kenya -- a pretty wide range.

Alan Gunn, the facilitator, then did an interesting exercise called
"spectrograms".

Here's how it worked.  Tape out a line the length of the room.  One
end is "strongly agree", the other is "strongly disagree".  The
facilitator then reads a question, and everyone moves to the place on
the line that represents their answer.  Some of the questions were:

    * Non-profits should use open source not just out of practicality,
      but also for philosophical reasons.

    * Open source is too difficult to use for non-profits.

    * It's not OK to use open source without also participating in the
      community.  (The two negatives in this question confused people,
      I think.)

Everyone stands for a bit while the facilitator leads a discussion.
In the discussion it's easy to represent both sides, because you can
ask people at either end to explain their position, and you can also
ask people in the middle.  This might be useful at PSF meetings:
imagine asking "The PSF is too centered on North America", for
example.


Speedgeeking
----------------------

<a
href="http://www.facilitation.aspirationtech.org/index.php/Facilitation:SpeedGeeking">Speedgeeking</a>
is like lightning talks in parallel.  You round up N speakers, who
will have 4 minutes for their talk; each speaker is placed at a
station.  The audience is divided into N groups, and the groups rotate
around the room so that they see all the talks; when the four minutes
are up, they *must* move on.  Speakers therefore deliver their talk N
times; today N equalled 9.

4 minutes is *hard*. I thought my talk was really short, but on the
first iteration it only left about 30 seconds for questions.  So I
began leaving stuff out, and finally got to have about 90 seconds for
questions.

The outline I spoke from is an appendix below, with a few comments
about stuff people seemed particularly interested in.

Most common question (3 times): "How does Python compare with PHP?"
My answer was: "Python's language design aims at remaining readable.
And Python is used in lots of different applications: web apps, but
also GUI prototypes, education, scientific programming, etc."  How
could I have answered this question better?  Only one person mentioned
Ruby or Rails, IIRC.


Mailman suggestions
---------------------------

Non-profits spend a lot of effort on their mailing lists and
discussion forums.  They worry if lists aren't lively, prod people to
write FAQs, actively move around postings and threads, and work to
encourage frequent helpful posters.  For example, on web-based forums,
frequent posters may get stars next to their name.

Comments on Mailman:

* attendees thought it *worked* fine...
* ... but *looked* old...
* ... and the HTML wasn't easily customizable.
* Doesn't keep many admin statistics (# of posts sent, # bounced, #
  of domains accessed, which lists are quiet and which are busy)
* can't delete archived posts easily, or move threads into another list.


Random ideas & action items
------------------------------

The PSF should talk to NOSI about collaborating where appropriate.
For example, NOSI talks about using Linux and OpenOffice for desktops;
perhaps the PSF could write a white paper about PyUno.

Suggestion for python.org: write a page about the history of the
software.  In one session there was a lengthy explanation of the early
history of Joomla, and someone commented that this was interesting
material.  I don't think we have such a page currently.

Write a comparison of Python and PHP.

The venue
--------------------

The conference was held at the <a
href="http://www.washingtonparks.net/parkscenter.html">Josephine
Butler Parks Center</a>, a mansion owned by the Washington DC Parks
system.  A few pictures of the interior are in my Flickr photostream;
see http://www.flickr.com/photos/44165698@N00/450081959/, for example.

I talked to Heather, who organized the logistics.  The mansion cost
$1000 to rent 3 rooms in it for the day.  The venue has wireless that
was installed on Friday, so there were still some problems with it
today (or maybe all the techies overwhelmed it).  If the PSF ever
wants a DC-area sprint, it would be a nice location; maybe a sponsor
could be found to cover the cost.

--amk


Appendix: talk outline
-------------------------

Intro:
I'm from the PSF, responsible for the open-source Python programming language.
This will be a high-level intro to the language & its community.

Python:
Was designed to be 1) easy-to-learn, 2) readable, 3) powerful.
Applied in many different fields.

Web applications:
Various CMSes exists; Plone is the best-known.
Also: the Mailman listserv software.
      the MoinMoin wiki.
Various web frameworks exist for writing new custom web apps.

[[Lots of people knew Mailman.  Many people at the meeting use
  'listserv' as a term for list management software, so I used it too,
  even though it's actually a trademark.]]

Educational uses:
Because it's easy to learn, Python is making inroads in education:
* high school level (example being Yorktown High School in Arlington)
* college level (some schools use Python in their 101 CS intros)
* MIT experimenting with an introductory course using Java & Python

[[Mentioning MIT impressed people considerably.]]

Also used for rapid development, prototyping, & adding scripts to apps/systems:
* Both Maya (commercial) and Blender (free software) use Python scripting.
* Corporate usage: all of ILM, Pixar, DreamWorks use Python in their 
  animation workflows.

[[This section was originally longer, but I dropped material to gain time.
  The corporate usage impressed people.]]

Active community:
* Package index contains ~2200 entries
* Have been holding annual conferences since 1994
* Many local user groups; for more info, I suggest attending a user
  group meeting.


More information about the Advocacy mailing list