SlideShare uma empresa Scribd logo
1 de 29
Baixar para ler offline
Open Source Community Metrics
Tips and Techniques for Measuring Participation


            LibreOffice Conference
                 October 2012

                  Dawn M. Foster
          Community Manager at Puppet Labs

                  @geekygirldawn
               dawn@puppetlabs.com

                 fastwonderblog.com
                   puppetlabs.com
Stuff I'll Talk About

  ●   What, why and example metrics
  ●   Coming up with the right metrics
  ●   Tips and techniques for collecting metrics
  ●   Sharing metrics and highlighting community members




                                    Photo: http://www.flickr.com/photos/falcifer/3136673599

                                2
Community Definition

 ●    Community includes all of the people who work on the project
       ●   Product contributors: developers, release managers, quality
           assurance, localization, etc.
       ●   Other developers: writing applications, modules, extensions, etc.
       ●   Users: people who run your software and provide feedback
       ●   Vendors: companies with products / services based on your project
       ●   Other contributors: promotion, moderation, documentation and more


     Some people contribute as part of their employment at companies,
     while others contribute free time. The community includes all of the
                   people who are working on your project.




                                         3
Metrics are Useful for Open Source Projects

  ●   Measure progress in your community over time
  ●   Who contributes
  ●   Where are people contributing
  ●   Spot trends
  ●   Gauge interest
  ●   Learn more about key contributors
  ●   Recognize contributions




                                4
Example: Components of an Open Source Community




                        5       http://www.flickr.com/photos/korou/2586472234
Example: Puppet Metrics September 2012
                           Summary
       4688 Members & 809 messages in Puppet-Users
        877 Members and 121 Messages in Puppet-Dev
              848 Nicks on #puppet IRC Channel
            1625 Forge Users & 528 Forge Modules
                   3388 Redmine Accounts
              381 Forks / 988 Watchers of Puppet


             Six Month Comparison (May 2012)
       3907 Members & 843 messages in Puppet-Users
        751 Members and 242 Messages in Puppet-Dev
              739 Nicks on #puppet IRC Channel
            1012 Forge Users & 310 Forge Modules
                   2783 Redmine Accounts
              298 Forks / 696 Watchers of Puppet

http://PuppetLabs.com/community/metrics
                          6
Example: June 2011 MeeGo Community Metrics Summary
• 439,963 unique people visited this month (430,070 last month).
 – 1,796,288 pageviews (1,857,907 last month); 599,573 total visits (597,658 last month)
• 25,801 people are members of MeeGo.com (was 24,019 last month)
 – Dev ML subscribers = 4772; Community = 3736; iL10N = 2607; SDK = 3197
• Mailing Lists: 5890 posts this month; 200 people posted 2+ msgs
• Forums: 2255 posts. 242 people posted 2+ messages
• New Bugs Created: 1938; Bugs Resolved: 2871
• Downloads: 52,627 1.2 Netbook, 626 1.2 IVI, 1505 1.1 N900, 3072 Tablet
• Active Users: Estimated at 800 – 1000 people.
 – Mailing Lists: 302 people with unique email addresses posted (308 last month)
 – Forums: 412 people posted at least one item (262 last month)
 – Bugzilla: 773 people performed some action (624 last month)
 – Wiki: 276 edited the wiki (205 last month)
 – IRC: 410-520 people logged into #meego simultaneously most days



                 http://wiki.meego.com/Metrics
                                             7
What are the Right Metrics for YOUR Project

 ●   Goals
     ●   What are your overall goals for the project?
     ●   How can you measure progress toward those goals?
     ●   What is important to you and your progress?
 ●   Trends
     ●   What should you measure to recognize trends?
     ●   How do you recognize when something is going wrong?
     ●   Do you notice big improvements?




                  Note: I measure way too much
                                  8          http://www.flickr.com/photos/bandfan/5548675317/
Mailing Lists: mlstats

  Mailing List Stats is a command line tool used to analyze
   mailing list archives. It downloads the archives, places
 them in a directory and stores all the information contained
           in each mailing list post into a database




                http://libresoft.es/tools/mlstats


                               9
Mailing Lists: mlstats for LibreOffice Developer List
●   Grab data from your mailing & store in db (repeat per ML)
       –   mlstats --db-user=root --db-password=
           http://lists.freedesktop.org/archives/libreoffice/
●   Top Content Query: All or By Month
       –   select subject, count(*) as c from messages group by subject
           order by c;
       –   select subject,monthname(first_date) as m, year(first_date) as
           y, count(*) as c from messages group by subject,
           month(first_date) order by y, m, c;
●   Top Poster Query
       –   select p.email_address,count(*) as c from messages as
           m,messages_people as p where
           m.message_id=p.message_ID group by p.email_address
           order by c;


                                       10
Mailing Lists: Top Content Result (graphed)
                                              [Libreoffice] LibreOffice WikiHelp
                                           [Libreoffice] Assertions and Logging
                       [ANN] Please use Gerrit from now on for Patch Review
                             [Bug 35673] LibreOffice 3.4 most annoying bugs
                                                        [Libreoffice] (no subject)
                                               Static src analysis of LibreOffice
                                   [Libreoffice] minutes of tech. steering call ...
                                   [Libreoffice] minutes of tech steering call ...
                                                              License statement
                                                                       No subject
[Libreoffice] [Bug 31865] [Task]: LibreOffice 3.3 release blockersnt/ stoppers
                                                          minutes of ESC call ...
                             [Bug 44446] LibreOffice 3.6 most annoying bugs
                                                                                                          Bugzilla Auto-posts
                 [Libreoffice] [Bug 37361] LibreOffice 3.5 most annoying bugs
                             [Bug 37361] LibreOffice 3.5 most annoying bugs
                 [Libreoffice] [Bug 35673] LibreOffice 3.4 most annoying bugs

                                                                                      0   100 200 300 400 500 600 700




                        What are people talking about?
                                                               11
Mailing Lists: Top Posters Result
               caolanm@redhat.com                2222
               bugzilla-daemon@freedesktop.org   1929
               michael.meeks@suse.com            1521
               michael.meeks@novell.com          1434
               sbergman@redhat.com               1224
               gerrit@gerrit.libreoffice.org     1076
               pmladek@suse.cz                    972
               nthiebaud@gmail.com                942
               thb@documentfoundation.org         880
               kendy@suse.cz                      776
               bjoern.michaelsen@canonical.com    723
               mstahl@redhat.com                  689
               serval2412@yahoo.fr                638
               kyoshida@novell.com                612
               tml@iki.fi                         556
               dtardon@redhat.com                 491
               l.lunak@suse.cz                    490
               oolst@nouenoff.nl                  474
               timar74@gmail.com                  473


      Who contributes to ML discussions?
                                        12
IRC: Multiple Analysis Tools Depending on Log Format

 Generates IRC stats for active people, by hour of the day,
       by day, most used words, quotes and more.


            http://royale.zerezo.com/irssistats/
                http://pisg.sourceforge.net/
        http://code.google.com/p/superseriousstats/




                            13
IRC




      14
IRC




      15
IRC




      16
Code Contributions: gitdm




         http://cgit.freedesktop.org/libreoffice/contrib/gitdm-config/
                    Thanks to Michael Meeks for this data
                                       17
Code Contributions: Ohloh




                http://www.ohloh.net/p/libreoffice/

                                 18
New Contributors: Ohloh




                http://www.ohloh.net/p/libreoffice/

                                 19
Recent Commits with Filter: Ohloh




                http://www.ohloh.net/p/libreoffice/

                                 20
Bugs

 ●   New bugs vs. resolved bugs
     ●   Can't just look at monthly trends
     ●   Need to take release cycle into account
     ●   Before release: more resolved bugs
     ●   After release: more new bugs
 ●   Participants
     ●   People who file new bugs
     ●   Participate in bugs (comment, etc.)
     ●   Careful with people who resolve bugs (usually QA)




                                       Image: http://www.thegeekstuff.com/2010/05/install-bugzilla-on-linux/

                                  21
Media Wiki




             22
Media Wiki

 ●   Get Statistics
     ●   http://wiki.meego.com/Special:Statistics
     ●   wget "http://wiki.meego.com/api.php?
         action=query&meta=siteinfo&siprop=statistics&format=ya
         mlfm"




                                 23
Website: Google Analytics




              Nokia Announcement
Roadmaps           Mobile World Congress




Source: Google Analytics
(excludes wiki prior to Dec 21)



                                           24
Automate: Scripts & Business Intelligence
 ●   A less than elegant method (figure out what you want)
     ●   Giant bash script
     ●   Uses wget, awk, mysql queries, etc.
     ●   Dumps a bunch of csv files on my hard drive
 ●   A better dashboard approach (WIP)
     ●   Open source metrics dashboard (business intelligence)
     ●   Uses Pentaho for reporting, runs regularly and produces a
         dashboard anyone can view at any time
     ●   http://www.webdetails.pt/




                                 25
Automate: Custom Code + Graphite
 ●   What we have now at Puppet
 ●   Lots of custom Ruby code
 ●   2 Projects:
     ●   Gather: Gathers data from
         various sources
     ●   Metrics: Calls Gather and
         displays output using Graphite
 ●   Generates one image file per graph plus a yaml file with
     min / max metadata
 ●   Uses Graphite Render URL API to display data
     ●   http://graphite.readthedocs.org/en/0.9.10/render_api.html
 ●   I manually add arrows to explain bumps in graphs

                                 26
Example: Custom Code + Graphite




                        27
Now What?

 ●   Report Regularly
     ●   Monthly – may be too often
     ●   Quarterly? Yearly?
 ●   Share the reports with the
     community
     ●   http://puppetlabs.com/community/metrics
     ●   http://wiki.meego.com/Metrics
     ●   http://tizen.org/community/metrics
 ●   Recognize
     ●   Recognize your top contributors

                                                   http://www.flickr.com/photos/play4smee/2439494411/




                                         28
Dawn Foster
Community Manager at Puppet Labs

         @geekygirldawn

     dawn@puppetlabs.com




       http://www.flickr.com/photos/tlk/5630885373/

Mais conteúdo relacionado

Destaque

NOS Presentation
NOS PresentationNOS Presentation
NOS Presentation
guestae47f2
 

Destaque (9)

NOS Presentation
NOS PresentationNOS Presentation
NOS Presentation
 
Rindaden bestenovertwitter
Rindaden bestenovertwitterRindaden bestenovertwitter
Rindaden bestenovertwitter
 
Wijktelevisieinovervecht
WijktelevisieinovervechtWijktelevisieinovervecht
Wijktelevisieinovervecht
 
Library-Faculty-Vendor Partnership to Create STEM Digital Learning Activities...
Library-Faculty-Vendor Partnership to Create STEM Digital Learning Activities...Library-Faculty-Vendor Partnership to Create STEM Digital Learning Activities...
Library-Faculty-Vendor Partnership to Create STEM Digital Learning Activities...
 
Wijk t vinovervecht
Wijk t vinovervechtWijk t vinovervecht
Wijk t vinovervecht
 
Rindaden bestenovertwitter
Rindaden bestenovertwitterRindaden bestenovertwitter
Rindaden bestenovertwitter
 
Brand effectiveness - MasterBrand
Brand effectiveness  - MasterBrandBrand effectiveness  - MasterBrand
Brand effectiveness - MasterBrand
 
Jason Keeling Webquest
Jason Keeling WebquestJason Keeling Webquest
Jason Keeling Webquest
 
Open source community metrics
Open source community metricsOpen source community metrics
Open source community metrics
 

Semelhante a Open Source Community Metrics LibreOffice Conference

Dd13.2013.milano.open ntf
Dd13.2013.milano.open ntfDd13.2013.milano.open ntf
Dd13.2013.milano.open ntf
Ulrich Krause
 

Semelhante a Open Source Community Metrics LibreOffice Conference (20)

Crunching the numbers: Open Source Community Metrics at OSCON
Crunching the numbers: Open Source Community Metrics at OSCONCrunching the numbers: Open Source Community Metrics at OSCON
Crunching the numbers: Open Source Community Metrics at OSCON
 
Crunching the numbers: Open Source Community Metrics
Crunching the numbers: Open Source Community MetricsCrunching the numbers: Open Source Community Metrics
Crunching the numbers: Open Source Community Metrics
 
A Peek Behind the Curtain: Managing the Kubernetes Contributor Community
A Peek Behind the Curtain: Managing the Kubernetes Contributor CommunityA Peek Behind the Curtain: Managing the Kubernetes Contributor Community
A Peek Behind the Curtain: Managing the Kubernetes Contributor Community
 
Netflix OSS Meetup Season 4 Episode 4
Netflix OSS Meetup Season 4 Episode 4Netflix OSS Meetup Season 4 Episode 4
Netflix OSS Meetup Season 4 Episode 4
 
The Latest and Greatest from OpenNTF and the IBM Social Business Toolkit, #dd13
The Latest and Greatest from OpenNTF and the IBM Social Business Toolkit, #dd13The Latest and Greatest from OpenNTF and the IBM Social Business Toolkit, #dd13
The Latest and Greatest from OpenNTF and the IBM Social Business Toolkit, #dd13
 
Socio-technical evolution and migration in the Ruby ecosystem
Socio-technical evolution and migration in the Ruby ecosystemSocio-technical evolution and migration in the Ruby ecosystem
Socio-technical evolution and migration in the Ruby ecosystem
 
Dd13.2013.milano.open ntf
Dd13.2013.milano.open ntfDd13.2013.milano.open ntf
Dd13.2013.milano.open ntf
 
Open Source Lessons from the TODO Group
Open Source Lessons from the TODO GroupOpen Source Lessons from the TODO Group
Open Source Lessons from the TODO Group
 
Hacktoberfest 2020 - Open source for beginners
Hacktoberfest 2020 - Open source for beginnersHacktoberfest 2020 - Open source for beginners
Hacktoberfest 2020 - Open source for beginners
 
Community update on flink 1.9 and How to Contribute to Flink
Community update on flink 1.9 and How to Contribute to FlinkCommunity update on flink 1.9 and How to Contribute to Flink
Community update on flink 1.9 and How to Contribute to Flink
 
Oscon 2016: open source lessons from the todo group
Oscon 2016: open source lessons from the todo groupOscon 2016: open source lessons from the todo group
Oscon 2016: open source lessons from the todo group
 
Building Your First App with Shawn Mcarthy
Building Your First App with Shawn Mcarthy Building Your First App with Shawn Mcarthy
Building Your First App with Shawn Mcarthy
 
Using oss and hacker culture at an internet company at osc/tokyo 2014/03/01
Using oss and hacker culture at an internet company at osc/tokyo 2014/03/01Using oss and hacker culture at an internet company at osc/tokyo 2014/03/01
Using oss and hacker culture at an internet company at osc/tokyo 2014/03/01
 
Guidelines for Working with Contract Developers in Evergreen
Guidelines for Working with Contract Developers in EvergreenGuidelines for Working with Contract Developers in Evergreen
Guidelines for Working with Contract Developers in Evergreen
 
W3C-כיצד פועל ה
W3C-כיצד פועל הW3C-כיצד פועל ה
W3C-כיצד פועל ה
 
Assign, Commit, and Review
Assign, Commit, and ReviewAssign, Commit, and Review
Assign, Commit, and Review
 
Using oss at an internet company and hacker culture; Linux Enterprise Users M...
Using oss at an internet company and hacker culture; Linux Enterprise Users M...Using oss at an internet company and hacker culture; Linux Enterprise Users M...
Using oss at an internet company and hacker culture; Linux Enterprise Users M...
 
Continuum Analytics and Python
Continuum Analytics and PythonContinuum Analytics and Python
Continuum Analytics and Python
 
Electric Capital Developer Report 2022
Electric Capital Developer Report 2022Electric Capital Developer Report 2022
Electric Capital Developer Report 2022
 
DITA on a Shoe String
DITA on a Shoe StringDITA on a Shoe String
DITA on a Shoe String
 

Mais de Dawn Foster

Measuring Project Health at VMware
Measuring Project Health at VMwareMeasuring Project Health at VMware
Measuring Project Health at VMware
Dawn Foster
 
Building Community for your Company’s OSS Projects
Building Community for your Company’s OSS ProjectsBuilding Community for your Company’s OSS Projects
Building Community for your Company’s OSS Projects
Dawn Foster
 
Building Community for your Company’s OSS Project
Building Community for your Company’s OSS ProjectBuilding Community for your Company’s OSS Project
Building Community for your Company’s OSS Project
Dawn Foster
 

Mais de Dawn Foster (20)

CHAOSS Metrics Overview and Examples
CHAOSS Metrics Overview and ExamplesCHAOSS Metrics Overview and Examples
CHAOSS Metrics Overview and Examples
 
Be a Good Corporate Citizen in Kubernetes
Be a Good Corporate Citizen in KubernetesBe a Good Corporate Citizen in Kubernetes
Be a Good Corporate Citizen in Kubernetes
 
Overcoming Imposter Syndrome to Become a Conference Speaker!
Overcoming Imposter Syndrome to Become a Conference Speaker!Overcoming Imposter Syndrome to Become a Conference Speaker!
Overcoming Imposter Syndrome to Become a Conference Speaker!
 
How to Be a Good Corporate Citizen in Open Source
How to Be a Good Corporate Citizen in Open SourceHow to Be a Good Corporate Citizen in Open Source
How to Be a Good Corporate Citizen in Open Source
 
Open Source Collaboration and Companies: Finding the Right Balance
Open Source Collaboration and Companies: Finding the Right BalanceOpen Source Collaboration and Companies: Finding the Right Balance
Open Source Collaboration and Companies: Finding the Right Balance
 
Navigating Open Source Risk
Navigating Open Source RiskNavigating Open Source Risk
Navigating Open Source Risk
 
Measuring Project Health at VMware
Measuring Project Health at VMwareMeasuring Project Health at VMware
Measuring Project Health at VMware
 
Navigating Open Source Risk
Navigating Open Source RiskNavigating Open Source Risk
Navigating Open Source Risk
 
Collaborative Leadership: Governance Beyond Company Affiliation
Collaborative Leadership: Governance Beyond Company AffiliationCollaborative Leadership: Governance Beyond Company Affiliation
Collaborative Leadership: Governance Beyond Company Affiliation
 
Collaborative Leadership: Governance Beyond Company Affiliation
Collaborative Leadership: Governance Beyond Company AffiliationCollaborative Leadership: Governance Beyond Company Affiliation
Collaborative Leadership: Governance Beyond Company Affiliation
 
Collaborative Leadership: Governance Beyond Company Affiliation
Collaborative Leadership: Governance Beyond Company AffiliationCollaborative Leadership: Governance Beyond Company Affiliation
Collaborative Leadership: Governance Beyond Company Affiliation
 
Collaborative Leadership: Governance Beyond Company Affiliation
Collaborative Leadership: Governance Beyond Company AffiliationCollaborative Leadership: Governance Beyond Company Affiliation
Collaborative Leadership: Governance Beyond Company Affiliation
 
Is this Open Source Project Healthy or Lifeless?
Is this Open Source Project Healthy or Lifeless?Is this Open Source Project Healthy or Lifeless?
Is this Open Source Project Healthy or Lifeless?
 
Collaboration in Linux Kernel Mailing Lists
Collaboration in Linux Kernel Mailing Lists Collaboration in Linux Kernel Mailing Lists
Collaboration in Linux Kernel Mailing Lists
 
Be a Good Corporate Citizen in Kubernetes
Be a Good Corporate Citizen in KubernetesBe a Good Corporate Citizen in Kubernetes
Be a Good Corporate Citizen in Kubernetes
 
Being a Good Corporate Citizen in Open Source
Being a Good Corporate Citizen in Open SourceBeing a Good Corporate Citizen in Open Source
Being a Good Corporate Citizen in Open Source
 
Building Community for your Company’s OSS Projects
Building Community for your Company’s OSS ProjectsBuilding Community for your Company’s OSS Projects
Building Community for your Company’s OSS Projects
 
Building Community for your Company’s OSS Project
Building Community for your Company’s OSS ProjectBuilding Community for your Company’s OSS Project
Building Community for your Company’s OSS Project
 
How to be a terrible hiring manager
How to be a terrible hiring managerHow to be a terrible hiring manager
How to be a terrible hiring manager
 
A week in the Life of Kubernetes
A week in the Life of KubernetesA week in the Life of Kubernetes
A week in the Life of Kubernetes
 

Último

IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
Enterprise Knowledge
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
giselly40
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 

Último (20)

IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdf
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 

Open Source Community Metrics LibreOffice Conference

  • 1. Open Source Community Metrics Tips and Techniques for Measuring Participation LibreOffice Conference October 2012 Dawn M. Foster Community Manager at Puppet Labs @geekygirldawn dawn@puppetlabs.com fastwonderblog.com puppetlabs.com
  • 2. Stuff I'll Talk About ● What, why and example metrics ● Coming up with the right metrics ● Tips and techniques for collecting metrics ● Sharing metrics and highlighting community members Photo: http://www.flickr.com/photos/falcifer/3136673599 2
  • 3. Community Definition ● Community includes all of the people who work on the project ● Product contributors: developers, release managers, quality assurance, localization, etc. ● Other developers: writing applications, modules, extensions, etc. ● Users: people who run your software and provide feedback ● Vendors: companies with products / services based on your project ● Other contributors: promotion, moderation, documentation and more Some people contribute as part of their employment at companies, while others contribute free time. The community includes all of the people who are working on your project. 3
  • 4. Metrics are Useful for Open Source Projects ● Measure progress in your community over time ● Who contributes ● Where are people contributing ● Spot trends ● Gauge interest ● Learn more about key contributors ● Recognize contributions 4
  • 5. Example: Components of an Open Source Community 5 http://www.flickr.com/photos/korou/2586472234
  • 6. Example: Puppet Metrics September 2012 Summary 4688 Members & 809 messages in Puppet-Users 877 Members and 121 Messages in Puppet-Dev 848 Nicks on #puppet IRC Channel 1625 Forge Users & 528 Forge Modules 3388 Redmine Accounts 381 Forks / 988 Watchers of Puppet Six Month Comparison (May 2012) 3907 Members & 843 messages in Puppet-Users 751 Members and 242 Messages in Puppet-Dev 739 Nicks on #puppet IRC Channel 1012 Forge Users & 310 Forge Modules 2783 Redmine Accounts 298 Forks / 696 Watchers of Puppet http://PuppetLabs.com/community/metrics 6
  • 7. Example: June 2011 MeeGo Community Metrics Summary • 439,963 unique people visited this month (430,070 last month). – 1,796,288 pageviews (1,857,907 last month); 599,573 total visits (597,658 last month) • 25,801 people are members of MeeGo.com (was 24,019 last month) – Dev ML subscribers = 4772; Community = 3736; iL10N = 2607; SDK = 3197 • Mailing Lists: 5890 posts this month; 200 people posted 2+ msgs • Forums: 2255 posts. 242 people posted 2+ messages • New Bugs Created: 1938; Bugs Resolved: 2871 • Downloads: 52,627 1.2 Netbook, 626 1.2 IVI, 1505 1.1 N900, 3072 Tablet • Active Users: Estimated at 800 – 1000 people. – Mailing Lists: 302 people with unique email addresses posted (308 last month) – Forums: 412 people posted at least one item (262 last month) – Bugzilla: 773 people performed some action (624 last month) – Wiki: 276 edited the wiki (205 last month) – IRC: 410-520 people logged into #meego simultaneously most days http://wiki.meego.com/Metrics 7
  • 8. What are the Right Metrics for YOUR Project ● Goals ● What are your overall goals for the project? ● How can you measure progress toward those goals? ● What is important to you and your progress? ● Trends ● What should you measure to recognize trends? ● How do you recognize when something is going wrong? ● Do you notice big improvements? Note: I measure way too much 8 http://www.flickr.com/photos/bandfan/5548675317/
  • 9. Mailing Lists: mlstats Mailing List Stats is a command line tool used to analyze mailing list archives. It downloads the archives, places them in a directory and stores all the information contained in each mailing list post into a database http://libresoft.es/tools/mlstats 9
  • 10. Mailing Lists: mlstats for LibreOffice Developer List ● Grab data from your mailing & store in db (repeat per ML) – mlstats --db-user=root --db-password= http://lists.freedesktop.org/archives/libreoffice/ ● Top Content Query: All or By Month – select subject, count(*) as c from messages group by subject order by c; – select subject,monthname(first_date) as m, year(first_date) as y, count(*) as c from messages group by subject, month(first_date) order by y, m, c; ● Top Poster Query – select p.email_address,count(*) as c from messages as m,messages_people as p where m.message_id=p.message_ID group by p.email_address order by c; 10
  • 11. Mailing Lists: Top Content Result (graphed) [Libreoffice] LibreOffice WikiHelp [Libreoffice] Assertions and Logging [ANN] Please use Gerrit from now on for Patch Review [Bug 35673] LibreOffice 3.4 most annoying bugs [Libreoffice] (no subject) Static src analysis of LibreOffice [Libreoffice] minutes of tech. steering call ... [Libreoffice] minutes of tech steering call ... License statement No subject [Libreoffice] [Bug 31865] [Task]: LibreOffice 3.3 release blockersnt/ stoppers minutes of ESC call ... [Bug 44446] LibreOffice 3.6 most annoying bugs Bugzilla Auto-posts [Libreoffice] [Bug 37361] LibreOffice 3.5 most annoying bugs [Bug 37361] LibreOffice 3.5 most annoying bugs [Libreoffice] [Bug 35673] LibreOffice 3.4 most annoying bugs 0 100 200 300 400 500 600 700 What are people talking about? 11
  • 12. Mailing Lists: Top Posters Result caolanm@redhat.com 2222 bugzilla-daemon@freedesktop.org 1929 michael.meeks@suse.com 1521 michael.meeks@novell.com 1434 sbergman@redhat.com 1224 gerrit@gerrit.libreoffice.org 1076 pmladek@suse.cz 972 nthiebaud@gmail.com 942 thb@documentfoundation.org 880 kendy@suse.cz 776 bjoern.michaelsen@canonical.com 723 mstahl@redhat.com 689 serval2412@yahoo.fr 638 kyoshida@novell.com 612 tml@iki.fi 556 dtardon@redhat.com 491 l.lunak@suse.cz 490 oolst@nouenoff.nl 474 timar74@gmail.com 473 Who contributes to ML discussions? 12
  • 13. IRC: Multiple Analysis Tools Depending on Log Format Generates IRC stats for active people, by hour of the day, by day, most used words, quotes and more. http://royale.zerezo.com/irssistats/ http://pisg.sourceforge.net/ http://code.google.com/p/superseriousstats/ 13
  • 14. IRC 14
  • 15. IRC 15
  • 16. IRC 16
  • 17. Code Contributions: gitdm http://cgit.freedesktop.org/libreoffice/contrib/gitdm-config/ Thanks to Michael Meeks for this data 17
  • 18. Code Contributions: Ohloh http://www.ohloh.net/p/libreoffice/ 18
  • 19. New Contributors: Ohloh http://www.ohloh.net/p/libreoffice/ 19
  • 20. Recent Commits with Filter: Ohloh http://www.ohloh.net/p/libreoffice/ 20
  • 21. Bugs ● New bugs vs. resolved bugs ● Can't just look at monthly trends ● Need to take release cycle into account ● Before release: more resolved bugs ● After release: more new bugs ● Participants ● People who file new bugs ● Participate in bugs (comment, etc.) ● Careful with people who resolve bugs (usually QA) Image: http://www.thegeekstuff.com/2010/05/install-bugzilla-on-linux/ 21
  • 23. Media Wiki ● Get Statistics ● http://wiki.meego.com/Special:Statistics ● wget "http://wiki.meego.com/api.php? action=query&meta=siteinfo&siprop=statistics&format=ya mlfm" 23
  • 24. Website: Google Analytics Nokia Announcement Roadmaps Mobile World Congress Source: Google Analytics (excludes wiki prior to Dec 21) 24
  • 25. Automate: Scripts & Business Intelligence ● A less than elegant method (figure out what you want) ● Giant bash script ● Uses wget, awk, mysql queries, etc. ● Dumps a bunch of csv files on my hard drive ● A better dashboard approach (WIP) ● Open source metrics dashboard (business intelligence) ● Uses Pentaho for reporting, runs regularly and produces a dashboard anyone can view at any time ● http://www.webdetails.pt/ 25
  • 26. Automate: Custom Code + Graphite ● What we have now at Puppet ● Lots of custom Ruby code ● 2 Projects: ● Gather: Gathers data from various sources ● Metrics: Calls Gather and displays output using Graphite ● Generates one image file per graph plus a yaml file with min / max metadata ● Uses Graphite Render URL API to display data ● http://graphite.readthedocs.org/en/0.9.10/render_api.html ● I manually add arrows to explain bumps in graphs 26
  • 27. Example: Custom Code + Graphite 27
  • 28. Now What? ● Report Regularly ● Monthly – may be too often ● Quarterly? Yearly? ● Share the reports with the community ● http://puppetlabs.com/community/metrics ● http://wiki.meego.com/Metrics ● http://tizen.org/community/metrics ● Recognize ● Recognize your top contributors http://www.flickr.com/photos/play4smee/2439494411/ 28
  • 29. Dawn Foster Community Manager at Puppet Labs @geekygirldawn dawn@puppetlabs.com http://www.flickr.com/photos/tlk/5630885373/