1. The PSF and You
Joining the Python Community
Steve Holden
steve@holdenweb.com
Washington DC Zope & Python User Group
October 6, 2009
2. whoami
Steve Holden, B.Sc., FBCS, CITP
The clients like those letters after your name
Python user since release 1.5
President, Holden Web LLC
Systems consulting and training shop
Now delivering Django-based systems
Excellent Python training ...
Author, Python Web Programming (2002)
Chairman, Python Software Foundation
3. Goals of This Talk
Highlight community activities
Connect you with “the Python community”
Whatever that is …
Encourage greater participation
5. The Community?
The PSF?
112 nominated members (March 2009)
Mostly not core developers
Contributors?
Source, documentation, blogs, anything!
Anyone who wants to join?
I don’t think so
Must demonstrate some commitment
6. Python Usage
Nobody really 2000000
knows how many 1800000
1600000
Python users there 1400000
2.5
1200000
are 1000000 2.6
800000 3.0
But usage is 600000
400000
3.1
growing 200000
0
Sep Nov Jan Mar May
So we can expect a
continual stream of Windows Installer Downloads, 2008/9
…
7.
8. Noob Enthusiasm!
I just started using python last week and I'm addicted.
[…]
Man, I love Python ! Its so clean and easy to use. Its so complete. It
links into everything one way or another... Java, C, C++, Qt, KDE,
SWT, Swing and probably more things that I don't know about.
Python makes sense. Python is readable.
[…]
I love how Python has object member lists in PyDev in Eclipse. It
makes it easy to use and explore the language and objects.
I wrote a simple command line serial emulator in about 10 minutes
using the PySerial library. Unbelievable.
I see a lot of Python in my future.
comp.lang.python, January 24, 2009
9. How Do We Enthuse Noobs?
They need to feel that “I rock!”
Immediately feeling positive about Python
use!
So, how do we have new users
“rocking out of the box”?
Get the user excited about Python!
Make them feel part of the community
What is Python’s marketing proposition?*
* This phrase is more or less guaranteed to get up some people’s noses
14. The Web Site Isn’t Captivating
Python users can’t do cool things?
We all know they can!
But how does a noob?
Where are the easily available demos?
wxPython scores very well here
Home page strategy:
make it obvious you can do extremely cool
things with Python quite easily
15.
16.
17.
18.
19.
20.
21.
22.
23.
24. So, What About python.org?
Some progress since January 2006
28. Conference Activity Vigorous
PyCon -- Atlanta in 2010 – yay!
International PyCons: Argentina, Brazil,
France, Italy, UK, Peru, EuroPython …
Regional (un)conferences
Just starting to appear in the US
PyOhio, PyAR, PyCamp TX, …
More will doubtless follow
PSF has offered support
– not always actually needed!
30. Development Needs Help
Not responding effectively to “first
patches” from new potential developers
“Non release critical bug
reports and feature requests
tend to fall down a black hole
after about a week.”
comp.lang.python, January 23, 2009
31. Development Grants
PSF awarded three development grants
SNMP-based development
Software Carpentry notes
Jython
Incredibly hard work for assessors
Not repeated due to lack of manpower
We do support many conferences
including regional conferences
32. Recent Conference Grants
SciPy 2009 $10,000
EuroPython 2009 $6,000
PyCon Italia 2009 $3,500
Python en Santa Fe 2008 $300
PyArkansas 2008 $300
PyCon UK 2008 $3,500
PyOhio 2008 $300
SciPy 2008 $7,500
34. Who’s In Charge?
The PSF?
If so then, notionally, me
Joined the PSF Board in 2004
Chairman since March 2008
Board is trying to provide open governance
But often the members just say
“get on with it, please”
35. What’s the Mission?
… to promote, protect, and advance the
Python programming language, and to
support and facilitate the growth of the
international community of Python
programmers [my emphasis]
How do we build popular support?
And what kind of support?
How can the PSF speak more authoritatively
for the whole Python community?
36. Recent PSF Changes
Bylaws Changes
Now more practical to enlarge membership
Full-time conferences coordinator
Position canceled due to losses
Treasurer engaged 500 hours/year
Administrative assistant
Remote worker, contracted as needed
Catching up on long-standing tasks
37. Leadership?
Open source people are not easy to lead
Constructive anarchy?
A strategy is required
This sets the direction
But if nobody gets behind it we may as well
not bother
This is the killer issue right now
Board members have only so much time …
Elected members would rather develop …
38. So, What’s the Strategy?
Facilitate ways to connect the community
Geeks aren’t the best at seeking each other
out and starting to collaborate
Support community initiatives
Conferences, SIGs, projects
Particularly those that produce visible results
Which in turn encourage more Python use
Enable rather than push
Nothing to push with at volunteers
39. Still, it’s better than
running the Python
Software Foundation
Steve’s Retirement
40. Basic Approach
Recruit ideas from “the community”
Encourage people to lead the projects
Support with resources as required
Mostly money (really: what money can buy)
Travel, equipment, other resources
Broader membership availability?
Python users appear to want to help the PSF!
You tell us …
This cannot be an abstract exercise
41. Resource Limits
Funds could become a problem
(Wo)manpower is
Without people to run programs we cannot do
everything we would like
Grants
Conferences
Infrastructure and Web Site
Publications
Development
User Groups
…
42. Engage The World!
Python users are our best advocates
Let’s give commercial users a channel
Explain how Python benefits them
Gives them a reason to publicize Python
They can publicize themselves too
Python is an excellent teaching language
Leverage existing teachers’ experience
Convince others of the benefits
43. How to Save Developer Time?
Semi-formal mentoring scheme
Attract and retain new developers
Welcome non-developers
Lots to do on documentation
Sprints require organization
Needs time investment from developers
Could be returned many times over
Ultimately leaving them free to develop!
The developers have so far mostly ignored this
suggestion
44. Guiding the Developers
Dialog with users is important
Tracker tool is a poor primary channel
Very intimidating to inexperienced users
Whose input is the most needed
Tracker “archaeology” project has helped
But the RoundUp interface is still complex
Need a more approachable medium?
Tests still need improvement
45. Optimize the Web
Make python.org a portal
Allowing access to diverse groups
With decentralized management via APIs*
Showcase the best of Python
Provide a compelling demonstration of
The vibrance of the Python community
The value of Python
Open source ideals
* But a unified look-and-feel, please … and professional availability levels
46. Possible Active Content
Top digg/delicious item of the day
Recent package index additions
News from projects
Featured jobs, projects, modules …
Conference news and reports
Latest Planet links
Code snippets
… etc., etc.
49. The Vision (or A Vision, Anyway)
PSF
Board
Web
National Outreach
Dev Fund Language Infra-
User And
and Raising Dev structure
Groups Marketing*
Maint
Local
Language
User CPython Jython PyPy IronPython
Specs
Groups
* There’s that word again …
50. The Inspirational Bit?
Ask not what Python can do for you
But rather, what you can do for Python
The PSF can use help
Just a question of deciding how you want to
contribute.
Contribution is the route to membership
But there are many ways to contribute
In the meantime, become an associate?
51. Some Wish List Items
Maintainer(s) for Python Success Stories
A different story daily on the home page
Professional “brand management”
You think “success” happens by accident?
More community members taking control
Own your project, ask for assistance
Better communication between users and
developers
The issue tracker is not the right forum …
52.
53. YOU Are the Python Community
This should be seen as an opportunity
Pro-actively represent the community
There’s nothing wrong with
planning to provide mutual benefit
Increasing Python popularity means
greater opportunity
Remember that newbie?
(S)he might be sitting next to you
Always take the time to welcome newcomers
54. Evangelism is OK!
Let’s all be Python evangelists
Let’s all acknowledge our debt to Python
And think about “giving something back* …”
Ask the PSF for resources
We can all help in different ways
Your ideas are as good as anyone else’s
The Python community is cool
Because you are cool!
* Or, better still, putting something in first!
55. Questions?
Suggestions?
Discussion?
Volunteering?
Is the bar open yet?