New release of Perceval: Slack support now available!

Perceval is the Grimoire Lab tool that gives the first step for allowing Grimoire to gather automatic and incremental data for almost any tool related with contributing to Open Source.

Grimoire Lab architecture draft, showing its different pieces

Grimoire Lab Architecture (draft). Some pieces still under heavy development

Perceval goes on the quest to retrieve and gather data from git, GitHub, Bugzilla, JIRA, Gerrit, mbox, pipermail, StackExchange, Discourse, etc.   for producing valuable indices, with GrimoireELK.

New release: Perceval 0.7.0

The new release increase the brunch of sources supported, gaining accuracy for the tracking of the project.

New features and improvements:

  • New set of backends added (some of them sponsored by our clients):
  • RateLimitError exception added for handling rate limit errors.
  • Code was cleaned to follow most of the PEP8 style guidelines.

Backend improvements:

  • git
    • retry calls on SSH commands were added to avoid temporal server errors
  • github
    • HTTP 404 errors are managed when user’s organizations are fetched
    • generic RateLimitError exception is used

Bugs fixed:

  • In Mediawiki backend, the log messages written when a revision is not found were set to ERROR when the real level should have been WARNING.
  • The URL used to fetch jobs in Jenkins was not common to all servers.
  • When UUIDs are generated with some input data, some errors may be raised due to problems encoding invalid characters on the input. To avoid these problems, a surrogate escape control error has been set when data is encoded to UTF8. (#123)
  • Handle Meetup requests rate limit. (#126)

We want you to test Perceval and Grimoire following the under development tutorial. If you are a GitHub user you might try  The Cauldron for free to analyze some GitHub organizations. And of course, feedback, issues and pull requests are always welcome!!!

Dashboard celebrating 25 years of Linux development

To celebrate 25 years of Linux kernel development, we at Bitergia have produced the Linux development history dashboard. This dashboard visualizes the current Linux git repository from two points of view: the history of all commits (changes to the source code) up to now, and the history of all lines in the current version. The dashboard visualizes the main parameters about the development (the who, when and what) are visualized, and allows for drilling down in the data, for example finding the specific commits that lead to a specific part of the code.


Do you want to learn about when the lines in the current kernel were authored? Who has participated in specific areas of the kernel? How many files have remain untouched for more than 10 years? Play with the dashboard and find your own interesting details!

The dashboard was produced using only free, open source software tools (among them, GrimoireLab, our tookit for software development analytics). If you want to learn more details, check the slides I intended to use for my presentation at LinuxCon, which unfortunately I couldn’t attend. Those provide some more insight about how it was produced, some examples about how it can be used, and some curiosities found by exploring it.

Continue reading

Adding Jenkins activity metrics. Early preview

On Monday, June 20th, our colleague Jesús will be in Berlin for OPNFV Design Summit to present The Quantitative State of OPNFV.[Update]: slides available, Jun, 20th, 2016.

OPNFV is one of the open source projects hosted by Linux Foundation and we have been working for them for almost a year, deploying and maintaining a Metrics Grimoire based Bitergia Dashbobard and detailed quarterly reports. But, meanwhile, we have been developing the new GrimoireLab toolkit, so we have some new things to show in Berlin for our OPNFV friends…

OPNFV MetricsGrimoire and GrimoireLab based dashboards

OPNFV MetricsGrimoire and GrimoireLab based dashboards

We have built a GrimoireLab based dashboard for OPNFV, but with some extra goodies!

Continue reading

5 reasons to have a Software Development Community Dashboard

Community managers spend their time in numerous community activities related with his/her main role: to get people to talk and contribute, react to the community managed, keep people engaged, etc. Key Performance Indicators (KPIs) should be set for each community based on its goals. It’s part of the job to elaborate reports with multiple metrics on community health for example. But, measuring should be an effective task.

Keeping this in mind, I’d like to share with you 5 reasons about why community managers or any other professional related with software development should have a dashboard that provides all the data about the community or project that she/he manages:

Continue reading

Understanding the code review process in OpenStack

As a part of our tests with Kibana and Elasticserch as frontends for our MetricsGrimoire databases, we’ve set up a dashboard for understanding the code review process in OpenStack (be sure of visiting it with a large screen and a reasonable CPU, otherwise your experience may be a bit frustrating).

Screenshot from 2015-10-22 00-24-53This dashboard includes information about all review processes (changesets) in OpenStack, using information obtained from their Gerrit instance. For each review, we have information such as the submitter (owner), the time it was first uploaded and accepted or abandoned, the number of patchsets (iterations) needed until it was accepted, and the time until it was merged or abandoned. With all of them we have prepared an active visualization that allows both to understand the big picture and to drill down looking for the details. Follow on reading to learn about some of these details.

[Note: this is our second post about our dashboards based on Kibana. If you’re interested, have a look at the first one, about OpenStack code contributions.]

Continue reading

Testing Kibana: OpenStack code contributions dashboard

We at Bitergia are busy testing new stacks for analyzing and visualizing the software development data we collect. Some our latest tests involve using Kibana for visualization. In this case, we have prepared a dashboard showing the latest contribution data for OpenStack.

Screenshot from 2015-10-19 01-28-46Screenshot from 2015-10-19 01-29-27One of the nice things that these new dashboards allow is the level of filtering and drill down which is possible. For example, in the above dashboard, it is possible to click on any sector on a pie chart, on any entry of a table, on any bar in a bar chart, and the corresponding filter will act. This allows for obtaining specialized dashboards very easily, such as this one with the contributions by RedHat (produced by clicking on RedHat in the list of of top organizations, or the contributions to Liberty, the latest release cycle of OpenStack, by selecting the corresponding period (last bar) in the “OpenStack ten top organizations by release” chart.

If you’re interested in learning about some tips and tricks about what can be done with these dashboards, follow on reading…

Continue reading

Kilo: the new OpenStack release

[Updated results based on methodological changes]

Kilo, the new OpenStack release, shows a continuous increase of activity if compared to Juno. From Icehouse to Juno, there was an increase of 6.22% in the number of commits and 17,07% in the number of unique authors. From Juno to Kilo, there’s a higher jump in terms of commits (11,23%) and a lower increase in terms of authors (11,16%). However, with this increase, there is a new peak in the number of unique authors contributing to the OpenStack Foundation projects with close to 1,600 different people participating in its development.

After the continuous increase of activity from release to release that we observed in the past, Kilo, the latest release of OpenStack is showing some stabilization. The differences  between Juno (the previous release) and Kilo are the lowest in the history of the analysis we’ve performed for the OpenStack Foundation. Although this release has reached a new peak in contributors, close to 1,500 different persons, the increase from Juno to Kilo was of around 900 commits and 200 authors while from Icehouse to Juno it was of  700 commits and 70 developers.

The list of organizations participating in the development of OpenStack keeps growing as well: close to 170 different organizations have contributed with at least one commit to the development of Kilo.

As the top ten contributors, we find the following organizations:


Regarding to the community itself, the timezones analysis shows a widespread activity around the world. OpenStack is a truly 24 hours-a-day continuous development community. There are three main groups of activity: America, on the left side of the chart, Europa/Africa in the center and Asia, on the right.

Total commits by timezone as detected in Git repositories

Total commits by timezone as detected in Git repositories

Ignoring the UTC 0 activity, that may be biased by developers using UTC 0 as their timezone with independence of their point of residence, the rest of the activity shows North America East and West coasts as the main contributors in number of commits. Europe/Africa is quite close to this activity (most of it due to Europe), although biased by the UTC peak of activity. India could be represented by the the small peak in UTC+5, and finally the rest of Asia, with China and Japan in first place, which is consistent with the localization of some contributing companies.

Methodological notes:

  • Some of the repositories under the OpenStack project have been removed of the analysis. As an example, specification projects are not counted for this analysis. The full list of repositories is available at the last quarterly report sponsorized by the OpenStack Foundation.
  • Developers are counted as the actual authors of the piece of code merged into upstream.
  • The time of commit takes into account the time when that piece of code is merged into upstream.
  • Each release, new repositories are added to the list of analyzed projects. This partially explains the continuous increasing activity in the OpenStack Foundation projects.