communicating the value of open source metrics
play

Communicating the Value of Open Source Metrics Ben Lloyd Pearson - PowerPoint PPT Presentation

Communicating the Value of Open Source Metrics Ben Lloyd Pearson Governor of GitHub @ Oath Metrics are awesome! But they arent inherently valuable Focused metric sets can help solve specific problems (Keep the end in mind) And enable us


  1. Communicating the Value of Open Source Metrics Ben Lloyd Pearson Governor of GitHub @ Oath

  2. Metrics are awesome!

  3. But they aren’t inherently valuable

  4. Focused metric sets can help solve specific problems (Keep the end in mind)

  5. And enable us to better communicate the value of open source efforts

  6. We can work together to make this a reality

  7. Speaker for the Dead What can learn from the perspective of React Intl

  8. A Slow Decline… Commits Time

  9. A Slow Decline… Commits Time

  10. Why Did this Project Die? Oath Others Commits Time

  11. Why Did this Project Die? Oath Others Commits Time

  12. Why Did this Project Die? Oath Others Commits Time

  13. Individual metrics can be misleading

  14. We need a more holistic approach that provides better context

  15. The goal: analytics dashboards that target specific problems

  16. This was an Avoidable Death 1. Monitor the Development Pace a. Trend lines to identify long term changes b. Y-o-Y acceleration/deceleration to identify shorter term changes

  17. This was an Avoidable Death 1. Monitor the Development Pace a. Trend lines to identify long term changes b. Y-o-Y acceleration/deceleration to identify shorter term changes 2. Evaluate the Contributor Distribution a. Commit distribution to identify sustainability of developer community b. Geographic distribution to identify developer communities

  18. This was an Avoidable Death 1. Monitor the Development Pace a. Trend lines to identify long term changes b. Y-o-Y acceleration/deceleration to identify shorter term changes 2. Evaluate the Contributor Distribution a. Commit distribution to identify sustainability of developer community b. Geographic distribution to identify developer communities 3. Evaluate the Organization Distribution a. Contributions from other organizations to identify potential partners b. External code as percent of total to track success of external outreach

  19. Real World Examples! Moloch Screwdriver

  20. Development Pace

  21. Monitor Development Pace Y-o-Y Cumulative Acceleration

  22. Monitor Development Pace Sudden acceleration in development pace, followed by sustained rate... Y-o-Y Cumulative Acceleration

  23. Monitor Development Pace Sudden acceleration in ...results in a new development pace, followed development pace that raises by sustained rate... the trend line Y-o-Y Cumulative Acceleration

  24. Monitor Development Pace Y-o-Y Cumulative Acceleration

  25. Monitor Development Pace A steady development pace... Y-o-Y Cumulative Acceleration

  26. Monitor Development Pace ...despite regular fluctuations A steady development year to year. pace... Y-o-Y Cumulative Acceleration

  27. React Intl: Development Pace

  28. React Intl: Development Pace Consistent periods of decelerating development ! ! !

  29. React Intl: Development Pace ! Crossed below the trend line after more than 1 year above Consistent periods of decelerating development ! ! !

  30. React Intl - Development Pace Consistent development deceleration across project history should have triggered alarms for further analysis The cumulative commits dropping below the long term trend line should have triggered a much bigger alarm

  31. Contributor Distribution

  32. Author Distribution: Commits Author Commits

  33. Author Distribution: Commits Extremely top heavy with a dependence on top two Author contributors Commits

  34. Author Distribution: Commits Author Commits

  35. Author Distribution: Commits Far more even distribution of commits per author Author Commits

  36. Author Distribution: Commits

  37. Author Distribution: Timezone Multiple contributors, but primarily in a single area Authors Timezone

  38. Author Distribution: Timezone Multiple contributors, but primarily in a single area Authors Timezone Commits Dominated by contributions from two people Timezone

  39. Author Distribution: Timezone Numerous contributors in multiple locations Authors Timezone

  40. Author Distribution: Timezone Numerous contributors in multiple locations Authors Commits Timezone More distributed commits per author Timezone

  41. React Intl: Contributor Distribution

  42. Regular participation from React Intl: Contributor Distribution community members ✓

  43. Regular participation from React Intl: Contributor Distribution external community ✓ ! Top heavy author distribution

  44. Regular participation from React Intl: Contributor Distribution external community ✓ ! Top heavy author distribution ✓ Numerous contributors in diverse geographic locations!

  45. Regular participation from React Intl: Contributor Distribution external community ✓ ! Dominated by Top heavy author contributions from two distribution people ✓ ! Numerous contributors in diverse geographic locations!

  46. React Intl: Contributor Distribution React Intl has a history of contributions from a diverse developer community However, most people never made more than 1 contribution

  47. Organizational Distribution

  48. Organization Commits External contributors represent very small portion of total contributions Oath Others Commits Time

  49. Oath Organizational Diversity Over Time Others Commits External contributions are decreasing as percent of (% of Total total contributions Time

  50. Organization Commits External contributors represent a larger portion of total contributions Oath Others Commits Time

  51. Oath Organizational Diversity Over Time Others Commits (% of Total) External contributions are increasing as percent of total contributions Time

  52. React Intl: Organizational Diversity

  53. React Intl: Organizational Diversity External contributors ✓ represent a modest amount of total contributions !

  54. React Intl: Organizational Diversity External contributors ✓ represent a modest amount of total contributions ! ✓ External contributions are increasing as percent of total contributions

  55. React Intl: Organizational Diversity React Intl had an increasing rate of external participation relative to internal participation. However, it never reached critical mass to hit a sustainable level of external participation

  56. How to Save React Intl

  57. What Works? Numerous contributors in diverse geographic locations

  58. What Works? Numerous contributors in diverse geographic locations! Regular participation from external community

  59. What Works? Numerous contributors in diverse geographic locations! Regular participation Increasing contributions as from external percent of total from external community community

  60. How to Save React Intl Make this Individual contributors Commits Timezone

  61. How to Save React Intl Make this Authors Individual contributors Timezone Commits Look more like this Timezone

  62. How to Save React Intl 1. Evaluate the individual / organizational distributions to identify existing developer communities

  63. How to Save React Intl 1. Evaluate the individual / organizational distributions to identify existing developer communities 2. Identify internal experts to bridge with external participants and cultivate a stronger community

  64. How to Save React Intl 1. Evaluate the individual / organizational distributions to identify existing developer communities 2. Identify internal experts to bridge with external participants and cultivate a stronger community 3. Set alarms to notify proper authorities when certain health metric thresholds are crossed (for emergency use only!)

  65. Three Steps for Rescue 1 2 Commits 3 Time

  66. Three Steps for Rescue 1 Commits Reach out to first external contributors to build pathway to project leadership Time

  67. Three Steps for Rescue Leverage high internal development 2 effort to increase involvement with external community Commits Time

  68. Three Steps for Rescue Support the community as it attempts to take over the project leadership Commits 3 Time

  69. The Plot Twist There are still a ton of internal and external developers who use and want to contribute to this project

  70. The Plot Twist There are still a ton of internal and external developers who use and want to contribute to this project Maybe it’s not too late!

  71. What Does this Mean for You?

  72. Extracting More Value from Open Source Metrics The Goal: ● Quickly gather vital information to better monitor projects for specific problems. ● Use the right data to better communicate how and where resources should be directed to better leverage open source software

  73. Extracting More Value from Open Source Metrics Metric sets like these could be useful for a variety of individuals ● Community Managers ● OSPO teams ● Development Managers ● Strategists ● Software Architects ● Etc.

Recommend


More recommend