Community Health Metrics With Grimoirelab ![rw-book-cover](https://i.ytimg.com/vi/mRkOk6ai_jY/maxresdefault.jpg?sqp=-oaymwEmCIAKENAF8quKqQMa8AEB-AH-CYAC0AWKAgwIABABGEwgXyhlMA8=&rs=AOn4CLDcqRxE9nP4_qshexW0YvV8QZHQDQ) ## Metadata - Author: [[CHAOSS]] - Full Title: Community Health Metrics With Grimoirelab - Category: #articles - Document Note: ## Summarize: In this presentation, Luis, an experienced software engineer and open-source contributor, discusses the importance of community health metrics and how they can be used to assess the sustainability and health of open-source projects. He emphasizes the need to have clear goals before calculating metrics and suggests a "goal-question-metric" approach to ensure the metrics align with the project's objectives. He introduces three key metrics: Pony Factor, Elephant Factor, and Active Contributors, which help in assessing the concentration of contributions from individuals and companies. Luis demonstrates the capabilities of the Grimmer lab platform, an open-source tool for tracking and analyzing open-source project data, to visualize and analyze these metrics effectively. ## Bullet Points: - Luis, an experienced software engineer and open-source contributor, discusses community health metrics in open-source projects. - He emphasizes the importance of having clear goals before calculating metrics and proposes a "goal-question-metric" approach. - Three key metrics are introduced: Pony Factor, Elephant Factor, and Active Contributors. - Pony Factor measures the concentration of contributions from individual developers, while Elephant Factor focuses on contributions from companies. - Active Contributors metric determines the number of contributors active within a specific timeframe. - The Grimmer lab platform, an open-source tool, is showcased to visualize and analyze open-source project data effectively. ## Paraphrase: 1. Luis suggests that when dealing with community health metrics, it's crucial to have a clear understanding of the project's objectives. Instead of calculating numerous metrics aimlessly, he advocates a more focused approach by defining goals and relevant questions first. This helps in selecting metrics that align with the project's specific needs. 2. He introduces three essential metrics: Pony Factor, Elephant Factor, and Active Contributors. The Pony Factor was inspired by the "bus factor" concept and calculates how many individuals are responsible for over 50% of a project's commits. The Elephant Factor, a variation of the Pony Factor, looks at contributions from companies instead of individuals, highlighting potential dependencies on specific organizations. Lastly, Active Contributors identifies the number of contributors actively involved in the project over a defined period, typically the last six months. ## Conclusion: Luis's presentation emphasizes the significance of community health metrics in open-source projects. By following a goal-question-metric approach, developers can select relevant metrics aligned with their project's objectives. He introduces three key metrics: Pony Factor, Elephant Factor, and Active Contributors, which provide valuable insights into the concentration of contributions from individuals and companies. Utilizing the Grimmer lab platform, developers can effectively visualize and analyze these metrics to assess the sustainability and health of their open-source projects. ## Questions: - How can the "goal-question-metric" approach be implemented in different types of open-source projects? - What are the potential risks associated with high Pony Factors and low Active Contributor rates in open-source projects? - How can open-source communities encourage contributions from diverse companies to improve their Elephant Factor? - Are there any limitations to the Grimmer lab platform in terms of handling large-scale open-source project data? ## Auto-tagging: Community Health Metrics, Open-source Projects, Sustainability, Goal-Question-Metric Approach, Pony Factor, Elephant Factor, Active Contributors, Grimmer lab Platform ## Index Creation: - Community Health Metrics: 1 - Open-source Projects: 1 - Sustainability: 1 - Goal-Question-Metric Approach: 1 - Pony Factor: 2 - Elephant Factor: 2 - Active Contributors: 2 - Grimmer lab Platform: 3 ## Table of Contents: 1. Introduction 2. Importance of Community Health Metrics 3. Goal-Question-Metric Approach - Defining Clear Goals - Selecting Relevant Questions - Choosing Appropriate Metrics 4. Key Metrics for Community Health - Pony Factor - Elephant Factor - Active Contributors 5. Demonstrating Grimmer lab Platform 6. Conclusion 7. Questions and Future Research ## References: 1. Blog post on "Pony Factor" by Daniel Gruno, Apache Software Foundation, 2015 (Link: [blog.peterja.com](https://blog.peterja.com)) ## Future Research: - Investigate the correlation between high Pony Factors and project sustainability in various open-source communities. - Explore strategies to increase the Elephant Factor by attracting contributions from a diverse range of companies. - Analyze the impact of different "active" timeframes (e.g., three months, one year) on assessing project health and activity levels. ## Hypotheses: 1. Open-source projects with higher Pony Factors are more vulnerable to maintenance issues if key contributors leave. 2. Projects with lower Elephant Factors might have a higher dependence on a single company, leading to potential sustainability risks. 3. Projects with a greater number of Active Contributors are likely to have more consistent and stable development. ## Methodology: 1. To explore the correlation between Pony Factors and project sustainability, collect data from various open-source projects with varying Pony Factor values. Analyze their long-term maintenance patterns. 2. To study the factors influencing the Elephant Factor, conduct surveys and interviews with companies contributing to open-source projects. Analyze their motivations and perceived benefits. 3. To investigate the impact of different "active" timeframes, compare project health metrics (e.g., commit frequency, issue resolution) for different time periods. ## Implications: The future research on community health metrics has the potential to significantly advance the understanding of open-source project sustainability. By identifying critical metrics and patterns, this research can help open-source communities make informed decisions, attract diverse contributions, and ensure the long-term viability of their projects. ## Logical Validity: Luis presents a compelling case for the importance of community health metrics in open-source projects. His goal-question-metric approach offers a systematic and focused method for selecting relevant metrics. The Pony Factor, Elephant Factor, and Active Contributors metrics are practical tools to assess project health. Luis demonstrates the Grimmer lab platform effectively, showcasing its usefulness in visualizing and analyzing open-source project data. The presentation is logical, coherent, and free of any apparent logical fallacies. Luis discusses community health metrics and emphasizes the importance of defining goals and questions when calculating metrics. [00:07](https://www.youtube.com/watch?v=mRkOk6ai_jY&t=7) Today's talk is about Community Health metrics [02:07](https://www.youtube.com/watch?v=mRkOk6ai_jY&t=127) Start with defining goals, questions, and metrics in a top-down fashion [04:06](https://www.youtube.com/watch?v=mRkOk6ai_jY&t=246) Adopting sustainable open source projects and ensuring their maintenance is crucial for organizations. [06:00](https://www.youtube.com/watch?v=mRkOk6ai_jY&t=360) The Pony Factor is a metric used to evaluate the stability of open source projects. [07:58](https://www.youtube.com/watch?v=mRkOk6ai_jY&t=478) The pony factor and elephant factor were created to measure the code contributions of individuals and organizations. [10:02](https://www.youtube.com/watch?v=mRkOk6ai_jY&t=602) The main points discussed are companies behind projects, the importance of active contributors, and the Grimmar lab project. [12:11](https://www.youtube.com/watch?v=mRkOk6ai_jY&t=731) Open Search is an open-source dashboard tracking data sources and platforms [14:08](https://www.youtube.com/watch?v=mRkOk6ai_jY&t=848) This dashboard provides a flexible filter for analyzing contributions of different projects. --------------------------------- Detailed Summary for [Community Health - Document Tags: [[open source]] [[sustainability]] - Summary: In this content, Luis discusses community health metrics that can be provided with remote lab. He emphasizes the importance of defining clear goals when calculating metrics and provides examples related to adopting sustainable open source projects. He introduces metrics such as Pony Factor, Elephant Factor, and Active Contributors. Luis also demonstrates the Grimmer lab platform and its capabilities in visualizing and analyzing data. The content concludes with an invitation to join the community and create custom dashboards. - URL: https://www.youtube.com/watch?v=mRkOk6ai_jY&ab_channel=CHAOSS hello hello hey this is starting so my name is Luis canadiaf oh I miss my face here a month right now so uh my name is Luis uh I work for peterjia uh by the way Ruth did you have if you are there well this is this uh this is recorded Ruthy you are there thank you so much for the invitation so today I'm going to talk about the about the community health metrics that we can provide with remote lab and well first thing first my name is Luis uh Luis I'm a Superman engineer I've been working with with data data sets insights and open source maybe for 15 years and I'm also a case contributor I contribute mainly to uh to Grimmer lab which is as a project of inside chaos and to the to the Matrix models I'm all I'm also a habitatia co-founder but there is a company we created some years ago and um I also uh a fan of turbos surely something typical in Spain that we eat with chocolate it is like fried dough is it healthy no at all but in case you you visit the Spain I recommend you to to have some tourists with chocolate so I'm going to talk today about Community Health metrics but uh I've been thinking about the what can be the the best takeaway you can get from my talk and um I would like to provide you some examples above um the best way to use metrics because it is very common that uh we started calculating Matrix without a clear uh idea of the of what we need of or why we need metrics why because [Music] um uh we have too many things to be calculated we can get too many metrics and it is key to the Fine uh the goal we have so um let me replace this question while you why do you need data with this one what is your goal and I want to use this this this question uh to work in the metrics you want to calculate for yourself and for the message you want to calculate for the organization you are you are working for and my proposal and my advice is to use this question as the north let's start when when dealing with metrics and this is why um as I said there are too many metrics to be calculated so you start with a matrix you are going to start with the ones that are easy to be calculated and you are going to get lost so the definition of the things to be calculated uh they must be defined in a in a in a top-down fashion starting with goals and then with questions added with metrics this is the the goal question metric approach we're using chaos and we use adbitergia and the the in in short we Define the goal that what we want to achieve with the Matrix so we for instance we want to be able if the project is half so we for this goal we Define a set of of questions we need to answer and then in order to answer these questions we Define some metrics that will help us to answer the questions so we need we have we now we have the list of metrics we need to calculate in order to assess is healthy okay we will have metrics that cannot be calculated for sure but at least we know it so this is basically the the whole question metric approach so I'm going to skip a couple of the slides because the I have a short slot but I would like to provide some some of the of the most basic example of goals which is to adopt sustainable open source or um to find out if a project is sustainable or not so if you're working with with with an organization uh I guess that you are aware um about some reports for instance the the one uh published by synaptic last year that stated that 97 of the applications are using at least one open source Library so for those for those organizations I mean for all organizations it is relevant to know if the if the dependencies are using are sustainable or not there are ways to measure this with a static code analysis and with vulnerability analysis but uh we want to go further we are not in in grimo lab we are not measuring um we are not measuring the complexity of the code we're not measuring the number of vulnerabilities but we are trying to predict with with with the information we have the the Futures project so um let's let's let's go back we this is the the goal for our example so we're going to adopt sustainable open source so we want to find out if our project is sustainable if a property is healthy so some of the questions we may have I have a list here um do you do you expect do you expect this project or projects to be maintained in the next two years uh are any of them maintained by a single maintainer so uh this is this is very relevant are they maintained by a single company so depending on the on the library um how critical it is uh if they are maintained by a single person this can be something very very important because your organization should be aware that if that person quits the project then most of the activity most of them maintain sensitivity is gone so this this is very relevant so let's let's uh use these questions to define the metrics we need okay and after talking about the Matrix we need let's play with the with the Grimmer lab platform to see how we can play with the data and get them so goal uh adopt sus enable open source so we need to find out if the prediscal fee first metric the first metric I suggest is Pony Factor Pony Factor um well by the way we have a bitter Gia we have a blog post where we introduce some of these metrics uh you can find it in at blog.peterja.com so we have a post talking about the pony Factor the pony factor is a metric created by Daniel gruno from the Apache server foundation in 2015 and it was inspired by the wuss factor and the the history around the boss factor is is worth mentioning but uh I think I don't have time but uh well I do it very quickly uh in 1994 in the python in the python main list someone sent this this message uh talking about keto gido is the python it's a python Creator I'm talking about the programming language so uh in a meeting in a business meeting some people wanted to know what will happen to the python committee without Quito in case Guido is disappears so and the subject was if gido was hit by a bus what is going to happen so this is the this is how the the bus Factor was formed for for open source projects for for software projects I mean so um so basically Daniel in uh in the budgetary foundation used this idea uh to create a pony factor and the idea of the body factor is to know uh how many people uh is doing the majority of the code of the code of the contributions to the code so in other words the the people who are submitting 50 or more of the commits in the last years so uh after applying this metric to The Possession Foundation he formed uh very interesting results and he applied the same metric to other trendy projects and this is what what this is what he got for instance he got that uh they get repository the git project was mainly maintained was mainly contributed by one one person one developer WordPress had a polyfacturer of two with me which means that two two people were responsible of 50 or more of their contributions in commits for any next it was one and you can say Okay I I think this is kind of relevant but uh let's imagine that you are in an organization and you are concerned about the security so uh this one open SSL this is 2015. uh the the poly Factor was two that means that uh the majority of the contributions the code base uh depend uh at that time into people okay so this is something that uh should be taken into account in order to to select a library for a critical environment for instance so um I'll go a bit faster uh at bitterjia we got jealous about the pony factor and uh I think that the same year or one year after the poly Factor we created the elephant factor which is pretty similar to the poly Factor but instead of looking of of uh undefined contributors we in the five organizations or companies so we want to find out the companies behind the the the the majority of the contributions so some some projects can be lead by two or three companies other computed by a single company in the second scenario if that company goes away then the project is is can be unmaintained so this is something that should be also taken into account and the the third metric is active contributors and this is ribbons and uh next time you see a report about the projector committee seeing like a number of commit developers number number of PR submitters for X for the Project X uh uh ask this to yourself um are they talking about people submitting PRS people creating comments during the last year last two years last five years we're in the whole activity the whole life of the project this is relevant because there are there is a way for instance to measure only active contributors okay and active contributions albuteria by default we use the the the definition of active like as someone uh contributing to the project in last six months and the the default uh definition of contribution is something selling a PR or or issue or submitting a back report this is an issue or creating a commit okay so now let's go to the to the dashboard and let me skip some of the slides well let me talk now about grimmar lab we are going to have like two minutes to to see it in uh to see it live so Grimmer lab is 100 open source it is it is really it is written mainly sorry in in Python and uh we are using open search as the as the uh search engine and user interface for the data we are using Django to provide a user interface to deal with the with the profiles of the contributors and companies so we we have different data sets and the result is a dashboard that we we are going to see now in open search um it is as I said it is CPL version three it is open source and it will be open source and so we are tracking data sources platforms that we track that we call resources like GitHub gitlab can read this course stack Overflow and many more and and in the slides I include here there are some links to to live examples and I'm going to these two are run by by community members I'm going to use the one that we are using at petersia to to to provide some of the services we provide and which is called bitter.io so let me now switch to the to the browser foreign okay so let me double check that I'm recording this okay yeah I have two minutes um well this is this is the the debut this is the last word that we are using this is open search so we are customizing open search C with with some with some plugins to to to allow us to provide the data and in open Search Everything is clickable which is quite cool here we have another view of the git contributions and uh we have a minion top with with several with different uh dashboards available and uh many many useful tools provided by the by the by the open search uh probed I was thinking that this is not really open search open set we are going to narrate this to open search in the next weeks this is still I think it's the last free uh free open version of kibana where we are switching to to open search uh very soon so this is not the last the latest criminal app available but the functionality is very similar so for instance um we are here having a look at the contributions for the last five years you can see here this this filter for the last five years for the chaos project and I'll show you how flexible this is so instead of last five years we're interested in the last six months okay and we know that chaos is composed by many different projects we have them here and I'm interested now in grimo lab so I can filter by Grimmer lab we see that most of the activity in the last six months in Premier lab is uh is liturgy as activity so we have like 500 commits nine authors and we have here the frequency of the comets and the different authors per month so uh things other cool things that can be done with this dashboard you can for instance start filtering in authors or you can use the filters on top to exclude them okay um I'm out of time so um yes visit the dashboard there are many different that's where we have more than three I think there are very cool things we can create network graphs every very very different uh kind of craps graphs and um you are you are you are welcome to to join the community and to start creating your your dashboards and and sharing share share them with us so thank you so much I'm sorry for being out of time um I guess at my my uh present version of myself has been replying your questions in the in the chat so thank you so much bye, Community Health Metrics With Grimoirelab, CHAOSS, 01h70gnqgng61pkftnvnj05kxa.