how to maximize effectiveness of developers contributing to free software

Download How to Maximize Effectiveness of Developers Contributing to Free Software

If you can't read please download the document

Upload: stefano-maffulli

Post on 04-Aug-2015

88 views

Category:

Social Media


0 download

TRANSCRIPT

1. How Corporations Can Maximize Effectiveness of Developers Contributing to Free Software Stefano Maffulli Developer Advocate OpenStack Foundation Linux Collaboration Summit Santa Rosa, Feb 2015 2. Source: Collaborative Development Trends Report Linux Foundation, March 2014 http://www.linuxfoundation.org/publications/linux-foundation/collaborative-development-trends-report-2014 3. Source: Collaborative Development Trends Report Linux Foundation, March 2014 http://www.linuxfoundation.org/publications/linux-foundation/collaborative-development-trends-report-2014 4. The Short Answer The software license has nothing very little to do The hard reality is that corporations have to change Tweak new product development and customer service Learn to think outside corporate boundaries Think long-term when engaging open source communities 5. How companies join open source communities 6. Classic Corporate Value Chain Inbound Logistics Operations Marketing Sales ServicesOutbound Logistics Human resources management Technology Development Procurement Firm Infrastructure M argin 7. Classic New Product Development 8. How OpenStack Is Made (Upstream) 9. The Actors involved No traditional management structure No 'dictator' No 'architect' No 'product manager' Representative democracy 10. The Release Process Time-based releases, every 6 months The cadence keeps people focused Milestones every 4-6 weeks to maintain the rhythm 11. Lifecycle of a Feature Roadmap defined via blueprints+specs Best proposed at the beginning of the cycle Must have specifications attached Code is peer-reviewed Blueprint filed Specification is proposed Specification is discussed openly Specification is approved Blueprint is scheduled for milestone Code development lifecycle Blueprint is closed 12. OpenStack is big Code repositories Known Companies Monthly Contributors Countries 260 600+ 139 185 2,902 Known Contributors Official Projects 22 Patches Merged for Juno 18,704Total Lines of Code +2.0M 13. OpenStack Moves Fast A new release every 6 months New projects being added in every release Austin San Antonio Santa Clara Boston San Francisco San Diego Portland Hong Kong Atlanta Paris Vancouver 0 1000 2000 3000 4000 5000 6000 Participation to OpenStack Summits 14. OpenStack Is Complex 15. The OpenStack Ecosystem (Downstream) 16. ConsumersProducers Companies involved Companies committed Operators End Users 17. Shared Innovation Value Chain Inbound Logistics Operations Marketing Sales ServicesOutbound Logistics Human resources management Technology Development Procurement Firm Infrastructure M argin OpenStack Collaboration 18. Blueprint filed Specification is proposed Specification is discussed openly Specification is approved Blueprint is scheduled for milestone Code development lifecycle Blueprint is closed Where Friction Accumulates Friction Friction Friction Friction 19. Collaboration in Product Development OpenStack Collaboration Effort 2004 Henry Chesbrough Docker Node ... 20. Reorganize corporate release cycles with the cycles of free software Corollary: adopt predictable release cycles for your free software project 21. Enable all employess to get known by the relevant people 22. Watercooler conversations are bad 23. Async means of communication improve involvement 24. Allow multiple paths for information to flow 25. Things That Create Disappointing Results Team organized around internal product cycle Only few engineers allowed to contribute upstream Performances measured against internal objective Community cycles and roadblocks are not considered Individuals are not motivated to contribute IT policies block access to wiki, email, IRC, git-review Engineers are prevented to interact with community Rigid chain of control for publishing code Individual engineers cannot commit code without supervisor's approval Makes patches grow very big before they can be pushed 26. Freeing Resources For Collaboration Open Source Program 27. Too Much To Handle? The shortcut Get developers exposed to open source way of doing things OpenStack offers Upstream University, two days free training before Summits Get legal clearance for devs to do work upstream Give them free time to spend upstream, 80/20 Have them do code reviews to get karma 28. What Corporations Can Gain Less your contribution is late or missing tests Contributors will know deadlines and best practices Less thank you but we don't like how you implemented it Contributors will have circulated design ideas before proposing code More Well done, we wish someone did this before Teams will fix issues proactively More karma to get past the dreaded Feature Freeze Tech Leaders will know that your developers know how to deliver good code on time and be more willing to grant exceptions 29. The Short Answer The license has very little to do with this (really) Get ready to change the organization Tweak how you develop products and serve customers Think outside corporate boundaries Think long term 30. All text and image content in this document is licensed under the Creative Commons Attribution-Share Alike 3.0 License (unless otherwise specified). "OpenStack" is a registered trademark. The logos, wordmark and icons are subject to international laws and its use is subject to the trademark policy. Questions? Comments? Stefano Maffulli @smaffulli [email protected] 31. All text and image content in this document is licensed under the Creative Commons Attribution-Share Alike 3.0 License (unless otherwise specified). "OpenStack" is a registered trademark. The logos, wordmark and icons are subject to international laws and its use is subject to the trademark policy. Credits and More Content https://www.openstack.org/summit/openstack-summit-atlanta-2014/session-videos/presentation/how-do-you-ag https://www.openstack.org/summit/openstack-summit-atlanta-2014/session-videos/presentation/building-a-cont http://upload.wikimedia.org/wikipedia/commons/4/4a/Artist%27s_concept_of_collision_at_HD_172555.jpg http://upload.wikimedia.org/wikipedia/commons/c/c8/Shinkansen_tokyo.jpg http://activity.openstack.org/dash/browser/scm-companies.html http://www.iriweb.org/Public_Site/RTM/Volume_55_Year_2012/July-August_2012/Open_Innovation_Where_We http://en.wikipedia.org/wiki/Burnout_%28vehicle%29#mediaviewer/File:Zeeboid_burnout.jpg http://upload.wikimedia.org/wikipedia/commons/thumb/5/5f/Metronome_Nikko.jpg/220px-Metronome_Nikko.jpg https://www.flickr.com/photos/museemccordmuseum/2918567169/ https://www.flickr.com/photos/movingsimplified/5127019316/ https://www.flickr.com/photos/amagill/38961674/