i wish i knew how to quit you

22
5 Secrets to Sustainable Python Communities IWishIKnew HowToQuitYou Saturday, November 10, 12

Upload: elizabeth-leddy

Post on 14-Jan-2015

4.197 views

Category:

Technology


5 download

DESCRIPTION

5 secrets to sustainable python communities

TRANSCRIPT

Page 1: I Wish I knew How to Quit You

5 Secrets to Sustainable Python Communities

IWishIKnew HowToQuitYou

Saturday, November 10, 12

Page 2: I Wish I knew How to Quit You

WTF is Plone and why are you talking to me?

Plone:Python CMSA Python CMS that is almost 11 years oldPersonally using Plone for ~10 years, but was only really involved in the last 4I got frustrated. Then I got involved. Oh boy.Open Source code is a love/hate cycle. Community is what pulls you out of the troughs.

Plone.org @eleddy

Saturday, November 10, 12

Page 3: I Wish I knew How to Quit You

ILovePloneAt the end of the day, I admit it:

and I want everyone to love their community just as much

Saturday, November 10, 12

Page 4: I Wish I knew How to Quit You

Whether you are just getting started in open source or trying to build a community around your project, you should decide what else you want out of a project. Communities come in all shapes and sizes.

Take Time to

ChoseYourOwnAdventure

Participating in Open Source can be more than just pushing code around

First people I talk to in the morning (pre-coffee even!) and the last people I talk to at night

Plone outlasted 2 major relationships, too many minor ones, 3 cities, 4 “normal” jobs, 2 startups

Worldwide network of coworkers/friends/extended family

Plone.org @eleddy

Saturday, November 10, 12

Page 5: I Wish I knew How to Quit You

MakePlansTip #1

Saturday, November 10, 12

Page 6: I Wish I knew How to Quit You

It’s about the community, stupid.

Discuss, communicate, react and think

LongTermFeature Planning

TestingInfrastructure

MarketingCode Cleanup

Conferences/SprintsLegal Issues

DocumentationSupport

Are you in it for the long haul or jumping from one fad to the next?

Plone.org @eleddy

Saturday, November 10, 12

Page 7: I Wish I knew How to Quit You

Nate Silver poops graphs better than this, but I’m not Nate Silver. *sigh*

MeasureCommunitySuccess

When a new technology gets some attention, there is the tendency to believe that existing, mature platforms are dying. Bad sentiment is hard to combat. Counter attack by measuring community success like you would performance: very carefully. Then hack it!

Average monthly activity on the Plone developers mailing list turns out to be a good indication of sentiment. People post more when they are involved and care about the direction of the product.

2.1 3.0

4.0

Unpopular Release + Recession =

Trough of Ugh

2.5Major Releases:

Plone.org @eleddy

Saturday, November 10, 12

Page 8: I Wish I knew How to Quit You

People move on, even BDFL’s. How would your community react to the loss of a key leader? What about a key company? What happens to progress of a key feature when someone meets a girl or (*gasp*) starts a family?

Continued success depends on a carefully crafted

LeadershipPipeline

Does the success of your community depend on the success of a specific company?A broad base of infrequent “casual participants” is just as important as a core group of “hard cores”Life happens! Teams and major features should be led by 2+ people.Key people will turn over; plan accordingly.Step down to make way for new blood

Plone.org @eleddy

Saturday, November 10, 12

Page 9: I Wish I knew How to Quit You

BreakPlansTip #2

Saturday, November 10, 12

Page 10: I Wish I knew How to Quit You

If Zope 4 is any indication, Ploners tend to be stubborn. The make up for it with a fantastic accuracy of hindsight.

If at first yo don’t succeed, try, try again.

EmbraceChange• Upgrade to modern tools (e.g. version control)• Admit a core feature was a mistake, poorly

implemented, and/or poorly received. Take it out of core. Not sure how to get started? Ask a Ploner.

• Adapt code conventions, then move on. Don't fret if your codebase isn’t 100% consistent with whats hip.

• Feature X might come in years too late: don’t be afraid to leave it out of core

• If you decide to do something different than status quo, decide where you want to lead and where you want to integrate

Plone.org @eleddy

Saturday, November 10, 12

Page 11: I Wish I knew How to Quit You

Constantly think about how to properly

TacklePackaging• Reusable infrastructure is overrated. Reusable css,

javascript, and design frameworks are NOT.• Too many core packages make it hard to

• release often

• ramp up new developers

• find possible issues with bug fixes

• Too many “add ons” and people are confused• What is the *right* way to do X?

• How do I know whats out there?

• Core code is maintained better but released slower

Plone.org @eleddy

Saturday, November 10, 12

Page 12: I Wish I knew How to Quit You

ThinkGloballyActLocally

Tip #3

Saturday, November 10, 12

Page 13: I Wish I knew How to Quit You

Huge efforts to translate core documentation have been immensely helpful. Still need better tools to present.

It’s easy to forget about the

LanguageBarrier• Many people speak English, but they don’t “prefer” it• Takes much longer to respond to mailing list wars in

another language• Often misinterpreted (and they know it)

• Non-native speaker != not smart enough• Local community brings in new people faster, maintains

longer• Huge intimidation factor

Plone.org @eleddy

Saturday, November 10, 12

Page 14: I Wish I knew How to Quit You

It’s not just for food sourcing:

EmbraceLocal• Have IRC channels in multiple languages (e.g. #plone-es)

• Host mailing lists in multiple languages

• Encourage local language symposia

• Invite international speakers/sprinters to share culture

• Translate “how to contribute” docs!

• Be patient and slow down (typing too)

• Redirect to locals when the barrier is too much

• Identify regional leaders and ask how you can help

Plone.org @eleddy

Saturday, November 10, 12

Page 15: I Wish I knew How to Quit You

2013: Plone Strategic Sprints

It is not uncommon for the nordic dwellers to go to South America in the winter. And not just for the women...

Travel isn’t just for vacation

AdventureAsStatusQuoThe best part of working with the world is experiencing it!

Plone.org @eleddy

Saturday, November 10, 12

Page 16: I Wish I knew How to Quit You

“Diversity” does not mean “women”. It means different countries, backgrounds, sexual preferences, clients and pants. The Plone community is tolerant of slim, straight, tall, short, unisex, imported and even apple bottom.

And we love working together to boot. \o/

A global, well traveled community creates

NaturalDiversity

The 2013 Plone Foundation Executive Board: 7 people

representing 4 countries, 5 accents, 3 sexual

preferences (openly), non-profit, for profit, big

companies, individual contractors, and

personalities ranging from troll to peace maker.

Plone.org @eleddy

Saturday, November 10, 12

Page 17: I Wish I knew How to Quit You

CommunicateTip #4

Saturday, November 10, 12

Page 18: I Wish I knew How to Quit You

Never underestimate the impact that one voice can have on the tone of a community!

Just try it. The first time is the hardest.

SpeakUpAsk for help

Ask for feedback

Ask for code review

Offer your time

Offer your opinion

Dish out THANK YOU’s like they are going out of style

➡ I’m happy to mentor

➡ I care what you think

➡ I want to get better

➡ I know you are busy

➡ I care enough not to +1

➡ It comes back around, and when you need it the most

Plone.org @eleddy

Saturday, November 10, 12

Page 19: I Wish I knew How to Quit You

Keeps dev.plone.org running, deals with my constant badgering. IP, domains, servers: he does it all. Do you know who keeps your public sites running?

aka martior

Martin Reistadbakk

Writes and publishes articles on plone.org and features about people doing great things in the community. She responds immediately and publishes just about weekly.

aka rosepruyneRose Pruyne

Came out of no where and started fixing several bugs a week. Has p0wned the bug tracker lately.

aka maartenklingMaarten Kling

Leads and motivates people to participate in the task that no developer wants to touch: documentation. Fearless helper of newbies in IRC, extreme blogger, moo is known to wield a katana.

aka moo9000, mooMikko Ohtamaa

Nothing is magic: there is a face behind everything

Recognize people working

BehindtheScenesand keep them happy!

Plone.org @eleddy

Saturday, November 10, 12

Page 20: I Wish I knew How to Quit You

Having a good heart and best intentions doesn’t solve trust issues, especially with remote work. Human drama is inevitable, fiscally motivated and otherwise. Build in safety switches ahead of time.

Never underestimate the need to

BeTransparent

Prefer teams to individualsFairly represent your users (read:diversify)Explicit is better than implicitNothing can be implied or assumed

Identify and unempower toxic peopleSpontaneous apathy is a canary, address it head onDiscuss and make major decisions in public eye Avoid side channel culture

Plone.org @eleddy

Saturday, November 10, 12

Page 21: I Wish I knew How to Quit You

Plone SF PyCon US Pyramid Drupal

Plone S America PyCon Canada SciPy CMS Expo

Don’t forget: trolling is equal opportunity

Step outside of your comfort zone

ReachOut

Plone.org @eleddy

Saturday, November 10, 12

Page 22: I Wish I knew How to Quit You

You are responsible for the energy you bring into this room!

BeAwesomeExpectAwesome

Tip #5

Saturday, November 10, 12