Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Fostering a culture of collaboration

Ben Balter
December 15, 2017

Fostering a culture of collaboration

Ben Balter

December 15, 2017
Tweet

More Decks by Ben Balter

Other Decks in Technology

Transcript

  1. Fostering a culture
    of collaboration
    Ben Balter
    @benbalter
    ben.balter.com
    [email protected]

    View Slide

  2. Roadmap
    • Open source (in the enterprise)
    • Best practices (internal, external)
    • Community building (internal, external)

    View Slide

  3. Open source
    in the enterprise

    View Slide

  4. The open source maturity model
    • Consuming - Using open source software
    • Releasing - Creating a new open source project
    • Contributing - Contributing to upstream projects
    • Embracing - Strategically participating in open source

    View Slide

  5. Conway's law
    “organizations which design systems ...
    are constrained to produce designs
    which are copies of the communication
    structures of these organizations ”

    View Slide

  6. How you work
    is as important as
    What you work on

    View Slide

  7. How closed source projects can
    work like open source projects

    View Slide

  8. Open source ≠ Published source

    View Slide

  9. Open source is a philosophy
    Not a type of software

    View Slide

  10. Process is shared to the widest extent practical
    One team — your organization — the entire world

    View Slide

  11. Open Source (software)

    software that can be freely used, modified, and shared 

    (in both modified and unmodified form) by anyone

    View Slide

  12. Open Source

    a philosophy of collaboration in which
    working materials are made available for 

    others to fork, modify, discuss, and contribute to.

    View Slide

  13. Adopting open source
    Code & process

    View Slide

  14. Friction (n) - the time it takes to go
    from "I want to contribute" to "I have"

    View Slide

  15. Open source
    best practices

    View Slide

  16. Inside the firewall

    View Slide

  17. 1. The technology is the easy part

    View Slide

  18. 2. Start small, go through the motions

    View Slide

  19. 3. Minimize information imbalance
    procedurally — day-to-day — long term

    View Slide

  20. 4. Embrace the constraints of open source
    Electronic — Available — Asynchronous — Informal

    View Slide

  21. 5. Open source problems, not solutions

    View Slide

  22. Outside the firewall

    View Slide

  23. 1. Expand your definition of stakeholders
    (Potential) users — (Potential) contributors — Subject matter experts

    View Slide

  24. 2. Be the hub, encourage spokes

    View Slide

  25. 3. Minimize contributor friction

    View Slide

  26. 4. Decentralize governance
    Community management — Code review — Leadership

    View Slide

  27. 5. Encourage contributions
    In advance — day-to-day — going forward

    View Slide

  28. Open source
    community building

    View Slide

  29. 1. Make open source an
    explicit expectation
    Open source Fridays — Hack Weeks — upstream improvements

    View Slide

  30. 2. Solve a shared problem

    View Slide

  31. 3. Link to the repository from
    your project’s distribution channel
    Topics — Good first issues — Help wanted

    View Slide

  32. 4. Add community documentation
    Common license — CONTRIBUTING — Community Profile

    View Slide

  33. 5. Publish technical documentation
    Marketing docs — End-user docs — Technical docs

    View Slide

  34. 6. Document how to contribute
    (And that you want contributions)

    View Slide

  35. 7. Clarify support vs. development
    SUPPORT file — troubleshooting/FAQ — dedicated channels

    View Slide

  36. 8. Welcome new contributors
    Hand holding — Saved replies — Linking to other issues

    View Slide

  37. 9. Set up automated tests (CI)
    To provide instant feedback without human intervention

    View Slide

  38. 10. Enforce code standards
    (and community standards too)

    View Slide

  39. Bonus: Automate (or outsource)
    community management
    Probot — Adoption — Archived repositories

    View Slide

  40. Resources
    • Open source guide: opensource.guide
    • FOSS Maturity model: github.com/github/maturity-model
    • Best practices - Internal: bit.ly/5bpos-internal
    • Best practices - External: bit.ly/5bpos-external
    • Best practices - Community: bit.ly/foss-community
    • Contributing template: github.com/nayafia/contributing-template

    View Slide

  41. These slides:
    http://bit.ly/foss-innovation-culture

    View Slide

  42. Fostering a culture
    of collaboration
    Ben Balter
    @benbalter
    ben.balter.com
    [email protected]

    View Slide