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

GrimoireLab Intro - OpenExpo 2017

GrimoireLab Intro - OpenExpo 2017

Brief introduction to Grimoire Lab metrics toolkit to analyze open source software development

Bitergia

June 01, 2017
Tweet

More Decks by Bitergia

Other Decks in Technology

Transcript

  1. GrimoireLab intro Manrique López @jsmanrique {email} at bitergia dot com

    https://speakerdeck.com/bitergia OpenExpo, Madrid, June 2017
  2. /me Hello, my name is Manrique and I am a

    community junkie Involved in: HPCC, AsturLiNUX, HispaLiNUX, GPE, Maemo, Meego, Gnome, GDG, Mozilla, ... Business, alliances, marketing & community developer in Bitergia, the software development analytics company
  3. /goals “...accelerate open technology development and commercial adoption…” “...global development,

    distribution and adoption of the OpenStack cloud…” “...open, collaborative software development projects…”
  4. /community “A community is commonly considered a social unit (a

    group of people) who share something in common, such as norms, values, identity, and often a sense of place that is situated in a given geographical area (e.g. a village, town, or neighborhood) [...] The word "community" derives from the Old French comuneté which comes from the Latin communitas (from Latin communis, things held in common)” By https://en.wikipedia.org/wiki/Community
  5. /wacth out! “Human beings adjust behavior based on the metrics

    they’re held against. Anything you measure will impel a person to optimize his score on that metric. What you measure is what you’ll get. Period”. You Are What You Measure by Dan Ariely
  6. /grimoirelab Perceval https://github.com/GrimoireLab/perceval PyPI package: $ pip3 install perceval From

    sources: $ git clone https://github.com/grimoirelab/perceval.git $ pip3 install -r requirements.txt $ python3 setup.py install Docker: https://hub.docker.com/r/grimoirelab/perceval/
  7. /grimoirelab Perceval https://github.com/GrimoireLab/perceval From command line: $ perceval [-c <file>]

    [-g] <backend> [<args>] |--help | --version In your Python code: … from perceval.backends.core.<backend> import <Backend> … backend_repo = <Backend>(<params>) for item in backend_repo.fetch(): …
  8. /grimoirelab Perceval https://github.com/GrimoireLab/perceval Backends: askbot Fetch questions and answers from

    Askbot site bugzilla Fetch bugs from a Bugzilla server bugzillarest Fetch bugs from a Bugzilla server (>=5.0) using its REST API confluence Fetch contents from a Confluence server discourse Fetch posts from Discourse site dockerhub Fetch repository data from Docker Hub site gerrit Fetch reviews from a Gerrit server git Fetch commits from Git github Fetch issues from GitHub gmane Fetch messages from Gmane hyperkitty Fetch messages from a HyperKitty archiver jenkins Fetch builds from a Jenkins server jira Fetch issues from JIRA issue tracker mbox Fetch messages from MBox files mediawiki Fetch pages and revisions from a MediaWiki site meetup Fetch events from a Meetup group nntp Fetch articles from a NNTP news group phabricator Fetch tasks from a Phabricator site pipermail Fetch messages from a Pipermail archiver redmine Fetch issues from a Redmine server rss Fetch entries from a RSS feed server slack Fetch messages from a Slack channel stackexchange Fetch questions from StackExchange sites supybot Fetch messages from Supybot log files telegram Fetch messages from the Telegram server
  9. /grimoirelab Perceval https://github.com/GrimoireLab/perceval Write your own backends! https://github.com/grimoirelab/perceval/tree/master/perceval/backends/cor e …

    class <Backend>(Backend): … @metadata def fetch(self): … … @metadata def fetch_from_cache(self): … … class <Backend>Client: … class <Backend>Command(BackendCommand): …
  10. /grimoirelab “Collecting data is only the first step toward wisdom,

    but sharing data is the first step toward community” Henry Louis Gates Jr., IBM/Linux Commercials
  11. /dependency Onion model ASF Pony factor Bitergia Elephant factor Bitergia

    Zapata factor Linux Kernel Zapata factor ~ 200 Bitergia United Fruit Company factor Linux Kernel UFCo factor ~ 10 Linux kernel ownership analysis: linux.biterg.io 7 core ~ 40 regular ~ 85 casual Pony factor: 1 Elephant factor: 2
  12. /gender Gender-diversity Analysis of the Linux Kernel Technical Contributions Women

    in OpenStack report for WOO Meeting Gender-diversity analysis of technical contributions in the Hadoop Ecosystem
  13. /reviews Open NFV code review stats Development cycle analysis Idea,

    request → Iterations → Testing → Deployment
  14. /reviews Some reviewers are more equal than others Neutrality? Source:

    Some developers are more equal than others (Bitergia’s blog, 2015) Source: Understanding How Companies Interact with Free Software Communities (IEEE, 2013)
  15. GrimoireLab intro Manrique López @jsmanrique {email} at bitergia dot com

    https://speakerdeck.com/bitergia OpenExpo, Madrid, June 2017