32
Successful Community Development Wayne Beaton (narrated by Ralph Mueller) Eclipse Foundation Grenoble, Nov 10, 2010 Mittwoch, 10. November 2010

Day3 wayne beaton eclipse community mgt

Embed Size (px)

Citation preview

Page 1: Day3 wayne beaton eclipse  community mgt

Successful Community Development

Wayne Beaton (narrated by Ralph Mueller)

Eclipse FoundationGrenoble, Nov 10, 2010

Mittwoch, 10. November 2010

Page 2: Day3 wayne beaton eclipse  community mgt

Agenda

• Define Community• Working with the Community• Doing the right things• Case Study

Mittwoch, 10. November 2010

Page 3: Day3 wayne beaton eclipse  community mgt

Define Community

Mittwoch, 10. November 2010

Page 4: Day3 wayne beaton eclipse  community mgt

Why Community?

• Shared Development burden

• Ubiquity of a Framework/Platform

• Acknowledge the Need!

• Document it

• Make it part of your project charter

Mittwoch, 10. November 2010

Page 5: Day3 wayne beaton eclipse  community mgt

Different Types

• End Users

• Adopters

• Committers

Mittwoch, 10. November 2010

Page 6: Day3 wayne beaton eclipse  community mgt

End Users

• Quality

• Information

• Documentation

• Easy to Find, Install, Use

• Support

Mittwoch, 10. November 2010

Page 7: Day3 wayne beaton eclipse  community mgt

Adopters

• Personalize and Extend

• Easy Programming Model

• Reliable APIs

• Low Barrier of Entry

Mittwoch, 10. November 2010

Page 8: Day3 wayne beaton eclipse  community mgt

Committers

• Be Part Of a Cool Project

• Low Barrier of Entry

• Align Project Goals with Own Goals

• Get Stuff Done

Mittwoch, 10. November 2010

Page 9: Day3 wayne beaton eclipse  community mgt

Working With The Community

Mittwoch, 10. November 2010

Page 10: Day3 wayne beaton eclipse  community mgt

Leadership

• Invite Contribution

• Mediate Conflicts and Diputes

• Set The Bar

• Balance (potentially) Opposing Viewpoints and Goals

Mittwoch, 10. November 2010

Page 11: Day3 wayne beaton eclipse  community mgt

Entry Barrier

• Can Everybody Be A Committer?

• Should It Be Difficult To Become A Committer?

• Can You Trust Your Committers?

• How Do You Establish Trust?

Mittwoch, 10. November 2010

Page 12: Day3 wayne beaton eclipse  community mgt

Growing Committers

• Make Contribution As Easy As Possible

• Define Clear Processes Where

• Mentor and Educate

• Provide Sandbox

Mittwoch, 10. November 2010

Page 13: Day3 wayne beaton eclipse  community mgt

Diversity

• Generalization of Competing Needs and Goals

• Outlives Your Involvement

• Independence From Single Organization

• Now This Is Interesting to Corporations

Mittwoch, 10. November 2010

Page 14: Day3 wayne beaton eclipse  community mgt

Open And Transparent

• Everybody Can Participate (Code Speaks!)

• Many Ideas, Many Approaches, Many Use Cases

• Everybody Can See Everything

• Even Your Problems ... That‘sa Tough One

Mittwoch, 10. November 2010

Page 15: Day3 wayne beaton eclipse  community mgt

Realism

• How Large Is Your Potential Community?

• Is Your Project Niche Or Mainstream?

• Will Your Academic Research Attract Corporate?

• Plan for Transition to Industrial

• Define Success Realistically

Mittwoch, 10. November 2010

Page 16: Day3 wayne beaton eclipse  community mgt

Be Pro-Active

• Find The Community

• Planes, Trains And Automobiles ...

• T-Shirts Are A Good Start ...

• ... But They Only Take You So Far

• Demo Camps, Stammtisch, Webinars, User Groups, Bar Camps, ...

Mittwoch, 10. November 2010

Page 17: Day3 wayne beaton eclipse  community mgt

Doing The Right Things

Mittwoch, 10. November 2010

Page 18: Day3 wayne beaton eclipse  community mgt

Community Is Key

• Jour Fixe

• Little Things

• Bug Reports Are Love Letters

• Set Time Aside

Mittwoch, 10. November 2010

Page 19: Day3 wayne beaton eclipse  community mgt

Quality

• Good Enough Is Not Good Enough

• A Milestone Is A Milestone, A Promise Is A Promise

• Plan For Quality - And Expect The Same From Your Team

• Educate New Committers

• Be „Quality Driven“

Mittwoch, 10. November 2010

Page 20: Day3 wayne beaton eclipse  community mgt

License And IP

• Define Your Business Case

• Find The Appropriate License

• Oh - And Who Owns What?

• And How Do you Track It?

• Trust Is Good, Control Is Better (Lenin)

Mittwoch, 10. November 2010

Page 21: Day3 wayne beaton eclipse  community mgt

Access & PR

• Be Highly Visible

• Dowenloads

• Good And Up-To-Date Web Site

• Solicit Backlinks

• Aggregate Bloggers

Mittwoch, 10. November 2010

Page 22: Day3 wayne beaton eclipse  community mgt

ADVERTISE IT

• Blogs

• Forums

• Twitter, Facebook And The Likes

• Invite Others To Write

• Talk To The Media

• Market Yourself

• Buy Drinks As A Last Resort

Mittwoch, 10. November 2010

Page 23: Day3 wayne beaton eclipse  community mgt

Case Study

Mittwoch, 10. November 2010

Page 24: Day3 wayne beaton eclipse  community mgt

Community DrivenErich Gamma: I think this is independent of open or closed-source. Software creates communities and transparent development is important if you want to grow a community. Open source in particular, though, is not just about making source available under some license; it is really about building up a community. And you build a community by showing them what you're up to, which means you make your plans visible. All of our milestone plans and project plans are visible on the web. All of our bugs are visible. The community really sees what's going on. Of course, what we hope for in return is that the community participates. And participation can come in many different forms—for example providing feedback in bug reports, contributing newsgroup replies, providing patches, implementing additional plug-ins, or writing articles. These are the ingredients of a tight feedback loop, and this kind of feedback loop is the key to having a good, shippable product in the end. The fact that Eclipse has such an active community is really cool and a major asset. Having such a community is an asset no matter whether the environment is open-source or closed.

Mittwoch, 10. November 2010

Page 25: Day3 wayne beaton eclipse  community mgt

Magic Number 42

Erich Gamma: We split the release cycle into milestones at a granularity of six weeks, and each milestone ends with an improved and useable Eclipse build. In general, those six weeks are like a small development cycle, in which we plan, develop, and test. With this kind of fractal major plan, we get in effect several small development cycles for each release. We slow down at the end of each milestone. We have a day where everybody gets out of the water and does testing. Doing testing for each milestone avoids that we accumulate a larger testing effort until the end of the release cycle. Then we document what's new and noteworthy, and we announce it to the community so they can observe our progress and provide early feedback. Then we plan the next milestone, taking into account both the overall plan and individual component plans.

Mittwoch, 10. November 2010

Page 26: Day3 wayne beaton eclipse  community mgt

A Bug Report Is A Love Letter

Erich Gamma: As far as the agile practices we follow when developing Eclipse, we always test early, often, and automated. For each build we run over 20,000 tests. We have nightly builds that are automated. We get build reports that tell us the failures. Recently in 3.1, we added performance tests. So we not only test for correctness, but also for performance. This has helped us a lot during the 3.1 cycle and actually you will notice significant performance improvements in version 3.1.

Mittwoch, 10. November 2010

Page 27: Day3 wayne beaton eclipse  community mgt

Impact

• Committers Spend 20 - 40 % Of Their Time On Community

• Management Forges Relationships With Other Organizations

• Outreach ... Outreach ... Outreach

Mittwoch, 10. November 2010

Page 28: Day3 wayne beaton eclipse  community mgt

Transparency And Openness

• Even Hallway Discussions Get Recorded

• PMC and Component Leads Meet Once A Week

• Meeting Notes Are Public

• Private Communication Is Deferred To Public Mailing Lists

• Sounds Easy, But Is Tough!

Mittwoch, 10. November 2010

Page 29: Day3 wayne beaton eclipse  community mgt

Eclipse Helios

Mittwoch, 10. November 2010

Page 30: Day3 wayne beaton eclipse  community mgt

Eclipse Helios39 Projects

490 Committer

33 Million Lines of Code

Mittwoch, 10. November 2010

Page 31: Day3 wayne beaton eclipse  community mgt

Summary

• Know Your Target Community

• Know What You Want

• Have A Plan

• Be Repsonisve

• Be Open And Transparent

• Be Aware Of The Effort

Mittwoch, 10. November 2010

Page 32: Day3 wayne beaton eclipse  community mgt

Thank you

Thank You Wayne For The Insights!

[email protected]

Mittwoch, 10. November 2010