LCNA14: How to run a Collaborative Project


Published on

Collaborative development is at the core of successful open source projects. Yet to be successful in today's competitive open source world, it is increasingly important to master many different disciplines and to develop an edge.

In this talk we will cover a wide range of topics relevant to developers and members of open source communities who want to increase participation in their projects. Topics range from growing your developer base (e.g. by participation in GSoC, OPW and similar programs), rewarding participation, projecting momentum in the media and press, coercing large companies into contributing more and in different ways to your project, running community initiatives successfully and measuring success.

We will use real-life examples and where appropriate share tools and mental models that help you make the right decisions for your project.

Published in: Technology
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide
  • Love to travel to weird places and grow weird plants
  • 10 years =stories to tell
  • Munich, London, LA

    Inspired by the Bezos Flywheel which “explains how to attract ever more sales in an online store”
  • Mention: Core Infrastructure Initiative
  • The reason for these issues is often an imbalanced or broken cycle
    In the case of the Xen Project, we also had an imbalanced cycle, and I spent the last 4 years at the project fixing this.

    10 years ago, putting the code out there was usually enough to be successful!

    Today we have a lot of new challenges
  • This is not true any more, because we hit resource limits
  • This story is about change : so let’s start with how OSS changed
  • Example:
    # Apache main strength is the “Apache Way” of building communities
    # One of the LFs main strength is the mix of commercial focus and marketing capabilities
  • Link back to Jim Zemlin’s keynote about the rise of OSS foundations

    #1 Inspired by Sales Funnels : conversion of leads from media interest to users to developers/companies
    Effectiveness determined by shape of funnel

    #2 The shape can be manipulated by activities (e.g. Test Days) and external events (e.g. what the competition does)

    #3 Don’t have time to go through this in detail, but there is a blog post and presentation with a case study explaining it

  • Maybe even link back to presentations given at events
  • Word of mouth => 60% of our joint GSoC and OPW participants being women
  • Mentoring does imply that existing maintainers and reviewers spend more time
  • Marketing vs. Community & Developer Driven
  • Do you remember that lesson?

    CLICK … in the areas they do well
  • Unfortunately that is easier said than done
    CLICK: because in practice there is often tension when one tries to do this
    CLICK: they have different reasons for participating
    BUT: the common interest for
    both companies and people mostly participate for their own selfish interests
    In other words: it’s unfair to say the interests of companies vs. those of people are better or worse than the others
    And of course that tension is manageable And some (!) OSS foundations are very good in helping manage that tension

    Responsibility in the sense of who should and is allowed to do what
  • The root cause was that we had no proven mechanism for companies and the community to work together
  • NOTE: I also used the conversation to ask for stuff from the vendor (such as donating of HW, …) – and now I am usually setting expectations upfront
  • Common thread to these stories …
    No bad intentions in any of them
    Companies and people will always try and push boundaries (in particular when they are fuzzy) to follow their self-interest
  • Cross-over of people, e.g. committers and maintainers on board and WG groups
  • Apache, Commercial Projects, …
  • In other words : why not let companies contribute expertise which they have rather than doing it all yourself
  • LCNA14: How to run a Collaborative Project

    1. 1. Lars Kurth Community Manger, Xen Project Chairman, Xen Project Advisory Board Director, Open Source Business Office, Citrix lars_kurth
    2. 2. Was a contributor to various projects Worked in parallel computing, tools, mobile and now virtualization Community guy at Symbian Foundation Learned how NOT to do stuff Community guy for the Xen Project Working for Citrix Member of OSS Business Office Accountable to Xen Project Advisory Board Chairman of Xen Project Advisory Board
    3. 3. Source: The 2014 Future of Open Source Survey Result
    4. 4. The # of Projects is growing rapidly 2007: 0.2M projects Today: 1.0M projects, 100Billion LOC, 10M contributors 2015: 1.8M projects John Morgan @ Flickr Simon & His Camera @ Flickr Kumar Appaiah @ Flickr
    5. 5. 50% of all enterprises adopt OSS software Julian Manson @ Flickr
    6. 6. 30% of companies make it easy for employees to contribute to projects Influencing a project’s direction is one of the main reason for contributing Nick @ Flickr toffehoff @ Flickr
    7. 7. Open Source Flywheel
    8. 8. [1]
    9. 9. 2001: Open Sourced by IBM 2001 – 2003: Growth from 8 to 80 consortia members 2006: Callisto 10 projects, 260 committers 2004: Eclipse Foundation 2011: 10th Birthday 273 projects, 1057 committers, 50+ MLOC, 174 members (see More projects/products/users, improved process, improved option value/modularity, … …
    10. 10. Tragedy of the Commons (sort of) Moyan Brenn @ Flickr
    11. 11. snoopsmouse @ Flickr
    12. 12. Bruce Schneier Internationally renowned security Technologist @Bruce_Schneier Catastrophic is the right word [for Heartbleed]. On the scale of 1 to 10, this is an 11.
    13. 13. Source: Growing Codebase Static and small contributor base 1 person maintaining 100 KLoC = Underinvestment Extremely large user base Critical infrastructure component Thus impact of Heartbleed is huge
    14. 14. snoopsmouse @ Flickr
    15. 15. Features How many users you have How many vendors back you How you are seen in the press …
    16. 16. can help you succeed
    17. 17. Neutrality / Perception Support Infrastructure Expertise / Mentoring Vendor Network … BUT: You still need to do all the right things
    18. 18. Create a balanced Flywheel OSS Foundations can help Master different skills Vinovyn @ Flickr
    19. 19. Follow Industry News Follow Project News Adopt Software Engage with Users Trial Software Engage with Industry Evangelize Contribute Customize Lead Activities Metrics Problem
    20. 20. Community is expanding fast Companies can’t find staff Potential of slowing growth Potential of loosing new vendors Poaching Friction Problem Tim J Keegan @ Flickr
    21. 21. Training: Expensive to create Does not normally scale You don’t need training… Good and active dev wiki In code API docs Recorded developer talks Extensive commit messages Design discussions on the list (linked to in commit message) Willingness to help newcomers (mentors) ...
    22. 22. Orgs need to apply (we did not always get in) Students only, summer only Orgs and companies can sponsor slots Interns, summer and winter Good mentors = word of mouth Committed mentors (who can spend a few hours a week) Suitable projects Not so much about the code = it’s an investment in people Metrics Approx. 40% still engaged after 3 years Repeat mentors, more people willing to mentor
    23. 23. 30% Community Growth p.a. Contributors competing for review time from stretched maintainer / reviewer base Average review time up from 28 to 32 days in 6 months Problem
    24. 24. Short term fixes (documentation/guidance : set expectations) (better co-ordination for amongst reviewers) Grow reviewer base by identifying capable candidates in the community (support + encourage + reward : Get backing from vendors to ensure candidates stay engaged in community (if vendor employee) Mentor candidates to get them effective more quickly than normal (copy the GSoC / OPW pattern) Still discussing how to do this (at a BoF yesterday and the dev meeting today) No guarantee this works!!!
    25. 25. Activities Problem Metrics
    26. 26. Activities Metrics Problem
    27. 27. Media Industry Media Coverage Social Media Impact
    28. 28. Media Industry Users User & Web Metrics Features / Releases
    29. 29. Community Metrics Contributors Media Industry Users
    30. 30. Are you helping your employer by contributing to the project? Employer Contributors Media Industry Users
    31. 31. Are you spending your funds wisely? Employer Board Contributors Media Industry Users
    32. 32.
    33. 33. Open Source Flywheel revisited The boundary between Business and Communities
    34. 34. Create a balanced Flywheel OSS Foundations can help Master many different skills Vinovyn @ Flickr Get Companies to help you
    35. 35. Undefined Responsibilities cause problems Moyan Brenn @ Flickr
    36. 36. Xen Project Advisory Board trying to push a preferred test harness over community solution Paralysis: no new test code written Delay of roll-out of independently hosted Test Farm Risk of Test Farm not being adopted • Working group jointly led by community and Advisory Board • Group resolved the issue
    37. 37. Vendor trying to use private channels to Citrix Xen Project maintainers to get an edge Committers needed the vendor help to progress their goals Vendor trying to get more and more Potential of lack of trust in our Xen Project maintainers • A rather difficult conversation • Vendor starting to follow community practices and additionally donating (non-developer) resources to the project
    38. 38. Tedious and Business Unfriendly Rules Moyan Brenn @ Flickr
    39. 39. Vendors wants to promote project at events (swag, booth, collateral, …) Tedious approval process for every single instance • PMC approval • VP of Trademark approval (bottleneck) Frustrated vendors Frustrated community • Simplify process for common situations • Proposal at
    40. 40. CommunityCompanies • PR / AR / Marketing / Messaging • Membership Rules / Trademarks / Legal • Provide funds to solve “Common Good” problems • Referee of last resort • Principles (aka Values) • Roles • Decision Making • Project Lifecycle • Community Initiatives, Best Practices, … Advisory Board WGs Project Governance Test WG PR WG TCT
    41. 41. Clear Rules and Responsibilities Remove tension Create trust Works best when aligned with Flywheel Business friendly Rules Simple and Easy Enables businesses to help the community Effect: Community sees value in company participation Vinovyn @ Flickr
    42. 42. Vinovyn @ Flickr
    43. 43. Maria Ly @ Flickr
    44. 44. Tchami @ Flickr
    45. 45. Please rate the talk