How It Happened
Stories and Lessons from Inside Python, Zope, Plone,
and Pyramid
Paul Everitt,Agendaless Consulting
PloneConf/PyCon Brasil, 2013
Bad Wolf Production
Tuesday, October 8, 13
2002
FISL, Porto Alegre
Tuesday, October 8, 13
Sidnei da Silva
Tuesday, October 8, 13
ZMI...yesterday
Tuesday, October 8, 13
Luciano Ramalho
Tuesday, October 8, 13
proclamation
Tuesday, October 8, 13
lesson
What you do < What you appear to do
(the dark arts)
Tuesday, October 8, 13
thanks
Ana Tania
Giuseppe
Tuesday, October 8, 13
about me
• Partner at Agendaless,“manage big stuff”
• Pyramid, Substance D (and Deform,
Supervisor,Waitress)
• Plone Foundation board
• Co-founder Zope
• PSF bootstrapper and board
*** Pyramid Open Space:Today, 5:30PM ***
Tuesday, October 8, 13
Content-Free Guarantee
You won’t learn anything, but you’ll laugh.
Memorable > Informative
Funny > True
Tuesday, October 8, 13
1993
www.navy.mil
Tuesday, October 8, 13
Ask question, get...answer
Tuesday, October 8, 13
lesson
• gopher+ is not the future of the Internet
Tuesday, October 8, 13
1994
Python Workshop One at NIST
Tuesday, October 8, 13
Tuesday, October 8, 13
Tuesday, October 8, 13
lessons
• Premature optimization: bylaws
• Durable impact requires a hero
Tuesday, October 8, 13
1996
Digital Creations
Tuesday, October 8, 13
Tuesday, October 8, 13
Bobo
• Object publishing
• Marshalling, calling, exception handling,ACL
• Transparent persistence
http://foo.com/aSite/aFolder/aSubfolder/anObject/aMethod?arg1=9&arg2=orange
>>> aSite[‘aFolder’][‘aSubfolder’][‘anObject’].aMethod(9,‘orange’)
Tuesday, October 8, 13
Tuesday, October 8, 13
Tuesday, October 8, 13
Tuesday, October 8, 13
lessons
• If there’s gonna be a majority owner...
• Objects, web, Python, community
• Spend extra time choosing a name
Tuesday, October 8, 13
1997
Principia
Tuesday, October 8, 13
Tuesday, October 8, 13
Key Selling Points
• Don't let your customer shoot you in the
foot
• URLs that you can read to your mom over
the phone
• Database that feels like a file system
• TTW: No “programming”
Tuesday, October 8, 13
lessons
• “What do you think we are, a database
company?”
• Original sins: Hide Python, Product
Company
Tuesday, October 8, 13
1998
Going Open Source
Tuesday, October 8, 13
Eric Raymond, IPC7
Tuesday, October 8, 13
$750,000... we are
going open source
Tuesday, October 8, 13
(
',' ' i7,l' iJ, &+o--r-'.:-,*,5^..
i 1'r..i' ,H+_-P+'j ,
r.. (  ri, :rr,'
)t - I
 Z"'"-*,-,$I_. W.'.,'-:r,
j>.#, z'- ---.,ur, *a -'- -',
1i.,,!,,,I+.itr:ia,1!k-1-;:., S+i-ft{ Z*4+. ,a',.,,,i/''.' ',
.ALT*,Iz, +-ALz, {' f . t. ",.s*--*,,A.tpil"".,, t.:,. . t'"-t'
. t i'/
:. A^'..--,.,-.*"i-."',
i1{,fi
-,
.-:. f) ,".r . iJ
V".. -..... ../.N- ,-,
l:
., ', , J' ,,.,,. r. (1,."", " ' ,,
Z;*, F"l,"o"'":', N,*uoF'',",
25 tJ ov
_, .,!..,Ai;,..,.1...".
Tuesday, October 8, 13
lessons
• Became an open source business story
• Hype: Another original sin...
• ...but it worked
• Built-in contradictions
Tuesday, October 8, 13
1999
Zope
Tuesday, October 8, 13
ever heard of?
Tuesday, October 8, 13
Tuesday, October 8, 13
Tuesday, October 8, 13
lessons
• ZClasses, Perl for Zope,Acquisition
• How different is too different?
• But what lesson really to learn?
Tuesday, October 8, 13
2000
IPC8
Tuesday, October 8, 13
Tuesday, October 8, 13
lessons
• Is it good to bring in outsiders?
• “Killer App” vs. hiding Python
Tuesday, October 8, 13
2000
Big Investment
Tuesday, October 8, 13
Tuesday, October 8, 13
Outcomes
• Professional CEO
• Took on PythonLabs
• Name change (“perfect distance”)
Tuesday, October 8, 13
Lessons
• Things completely changed
• Would you do PythonLabs differently?
• Would you do the C Round?
Tuesday, October 8, 13
Paul, look at your
watch
Tuesday, October 8, 13
2000
ArsDigita Port to Java
Tuesday, October 8, 13
Outcome
Tuesday, October 8, 13
lessons
• Much easier to get big, once big, you're
stuck
• Can't be what you're not (again)
• If you’re going to reboot, rename
Tuesday, October 8, 13
2001
Zope 3
Tuesday, October 8, 13
Tuesday, October 8, 13
lessons
• Major change is usually fatal
• Shouldn’t have called it Zope
• Second system syndrome...who was it for?
Tuesday, October 8, 13
cautionary tale
Tuesday, October 8, 13
2003
Castle Sprint
Tuesday, October 8, 13
Tuesday, October 8, 13
Philipp Auersperg
Tuesday, October 8, 13
lessons
• We are awesome
• The people are the story
Tuesday, October 8, 13
Dorneles Treméa
Tuesday, October 8, 13
2004
Plone Foundation
Tuesday, October 8, 13
Alan Runyan
Tuesday, October 8, 13
Tuesday, October 8, 13
Tuesday, October 8, 13
lessons
• Legitimacy is given, not taken
• The PF is a wonderful success story and
achievement
Tuesday, October 8, 13
2010
Pyramid
Tuesday, October 8, 13
Tuesday, October 8, 13
Armin Ronacher
Pylons and BFG have recently merged into a new
framework called Pyramid and this was one of the greatest
moves in Python's web framework history...
...what makes me incredible happy currently is that the
developers of most Python frameworks or WSGI
implementations have contact with each other in some form
or another and there is potential for working together.
Tuesday, October 8, 13
lessons
• With humility, you can avoid second system
syndrome
• Chris:“Only regret is not doing it in 2005”
• No original sins, knew exactly what it was
Tuesday, October 8, 13
2013
Plone/Python in Brasil
Tuesday, October 8, 13
Dinner Last Night
Tuesday, October 8, 13
lessons
• The suits don’t always win
• Authenticity and humanity
Tuesday, October 8, 13
Now
Life on Earth
Tuesday, October 8, 13
Forecast: Sunny
• Django strong, Python never stronger
• Pyramid gaining traction
• Substance D brings back the fun
• All these experiences...
Tuesday, October 8, 13
Girls Lacrosse
Tuesday, October 8, 13
lesson
• Open source organizing for local
volunteers is fun and rewarding
• Re-learned lesson...
Tuesday, October 8, 13
life: you only get one
shot at it
Tuesday, October 8, 13
in conclusion
Tuesday, October 8, 13
lessons learned
Original sins, hype, hiding Python, too different, can’t be
something you’re not, people matter
Tuesday, October 8, 13
perspective
Tuesday, October 8, 13
how fortunate we are
Tuesday, October 8, 13
to live a life with
joy and purpose
Tuesday, October 8, 13
thank you
Tuesday, October 8, 13

"How It Happened" Keynote at PloneConf/PyCon Brasilia 2013