This blog has been re-posted and edited with permission from Dries Buytaert’s blog.
An in-depth analysis of how Drupal’s development was sponsored between July 1, 2018 and June 30, 2019.
The past years, I’ve examined Drupal.org’s contribution data to understand who develops Drupal, how diverse the Drupal community is, how much of Drupal’s maintenance and innovation is sponsored, and where that sponsorship comes from.
You can look at the 2016 report, the 2017 report, and the 2018 report. Each report looks at data collected in the 12-month period between July 1st and June 30th.
This year’s report shows that:
- Both the recorded number of contributors and contributions have increased.
- Most contributions are sponsored, but volunteer contributions remains very important to Drupal’s success.
- Drupal’s maintenance and innovation depends mostly on smaller Drupal agencies and Acquia. Hosting companies, multi-platform digital marketing agencies, large system integrators and end users make fewer contributions to Drupal.
- Drupal’s contributors have become more diverse, but are still not diverse enough.
Methodology
What are Drupal.org issues?
“Issues” are pages on Drupal.org. Each issue tracks an idea, feature request, bug report, task, or more. See https://www.drupal.org/project/issues for the list of all issues.
For this report, we looked at all Drupal.org issues marked “closed” or “fixed” in the 12-month period from July 1, 2018 to June 30, 2019. The issues analyzed in this report span Drupal core and thousands of contributed projects, across all major versions of Drupal.
What are Drupal.org credits?
In the spring of 2015, after proposing initial ideas for giving credit, Drupal.org added the ability for people to attribute their work in the Drupal.org issues to an organization or customer, or mark it the result of volunteer efforts.
A screenshot of an issue comment on Drupal.org. You can see that jamadar worked on this patch as a volunteer, but also as part of his day job working for TATA Consultancy Services on behalf of their customer, Pfizer.
Drupal.org’s credit system is truly unique and groundbreaking in Open Source and provides unprecedented insights into the inner workings of a large Open Source project. There are a few limitations with this approach, which we’ll address at the end of this report.
What is the Drupal community working on?
In the 12-month period between July 1, 2018 and June 30, 2019, 27,522 issues were marked “closed” or “fixed”, a 13% increase from the 24,447 issues in the 2017-2018 period.
In total, the Drupal community worked on 3,474 different Drupal.org projects this year compared to 3,229 projects in the 2017-2018 period — an 8% year over year increase.
The majority of the credits are the result of work on contributed modules:
Compared to the previous period, contribution credits increased across all project types:
The most notable change is the large jump in “non-product credits”: more and more members in the community started tracking credits for non-product activities such as organizing Drupal events (e.g. DrupalCamp Delhi project, Drupal Developer Days, Drupal Europe and DrupalCon Europe), promoting Drupal (e.g. Drupal pitch deck or community working groups (e.g. Drupal Diversity and Inclusion Working Group, Governance Working Group).
While some of these increases reflect new contributions, others are existing contributions that are newly reported. All contributions are valuable, whether they’re code contributions, or non-product and community-oriented contributions such as organizing events, giving talks, leading sprints, etc. The fact that the credit system is becoming more accurate in recognizing more types of Open Source contribution is both important and positive.
Who is working on Drupal?
For this report’s time period, Drupal.org’s credit system received contributions from 8,513 different individuals and 1,137 different organizations — a meaningful increase from last year’s report.
Consistent with previous years, approximately 51% of the individual contributors received just one credit. Meanwhile, the top 30 contributors (the top 0.4%) account for 19% of the total credits. In other words, a relatively small number of individuals do the majority of the work. These individuals put an incredible amount of time and effort into developing Drupal and its contributed projects:
Rank | Username | Issues |
---|---|---|
1 | kiamlaluno | 1610 |
2 | jrockowitz | 756 |
3 | alexpott | 642 |
4 | RajabNatshah | 616 |
5 | volkswagenchick | 519 |
6 | bojanz | 504 |
7 | alonaoneill | 489 |
8 | thalles | 488 |
9 | Wim Leers | 437 |
10 | DamienMcKenna | 431 |
11 | Berdir | 424 |
12 | chipway | 356 |
13 | larowlan | 324 |
14 | pifagor | 320 |
15 | catch | 313 |
16 | mglaman | 277 |
17 | adci_contributor | 274 |
18 | quietone | 266 |
19 | tim.plunkett | 265 |
20 | gaurav.kapoor | 253 |
21 | RenatoG | 246 |
22 | heddn | 243 |
23 | chr.fritsch | 241 |
24 | xjm | 238 |
25 | phenaproxima | 238 |
26 | mkalkbrenner | 235 |
27 | gvso | 232 |
28 | dawehner | 219 |
29 | e0ipso | 218 |
30 | drumm | 205 |
Out of the top 30 contributors featured this year, 28 were active contributors in the 2017-2018 period as well. These Drupalists’ dedication and continued contribution to the project has been crucial to Drupal’s development.
It’s also important to recognize that most of the top 30 contributors are sponsored by an organization. Their sponsorship details are provided later in this article. We value the organizations that sponsor these remarkable individuals, because without their support, it could be more challenging for these individuals to be in the top 30.
It’s also nice to see two new contributors make the top 30 this year — Alona O’neill with sponsorship from Hook 42 and Thalles Ferreira with sponsorship from CI&T. Most of their credits were the result of smaller patches (e.g. removing deprecated code, fixing coding style issues, etc) or in some cases non-product credits rather than new feature development or fixing complex bugs. These types of contributions are valuable and often a stepping stone towards towards more in-depth contribution.
How much of the work is sponsored?
Issue credits can be marked as “volunteer” and “sponsored” simultaneously (shown in jamadar’s screenshot near the top of this post). This could be the case when a contributor does the necessary work to satisfy the customer’s need, in addition to using their spare time to add extra functionality.
For those credits with attribution details, 18% were “purely volunteer” credits (8,433 credits), in stark contrast to the 65% that were “purely sponsored” (29,802 credits). While there are almost four times as many “purely sponsored” credits as “purely volunteer” credits, volunteer contribution remains very important to Drupal.
Both “purely volunteer” and “purely sponsored” credits grew — “purely sponsored” credits grew faster in absolute numbers, but for the first time in four years “purely volunteer” credits grew faster in relative numbers.
The large jump in volunteer credits can be explained by the community capturing more non-product contributions. As can be seen on the graph below, these non-product contributions are more volunteer-centric.
Who is sponsoring the work?
Now that we’ve established that the majority of contributions to Drupal are sponsored, let’s study which organizations contribute to Drupal. While 1,137 different organizations contributed to Drupal, approximately 50% of them received four credits or less. The top 30 organizations (roughly the top 3%) account for approximately 25% of the total credits, which implies that the top 30 companies play a crucial role in the health of the Drupal project.
Top contributing organizations based on the number of issue credits.
While not immediately obvious from the graph above, a variety of different types of companies are active in Drupal’s ecosystem:
Category | Description |
---|---|
Traditional Drupal businesses | Small-to-medium-sized professional services companies that primarily make money using Drupal. They typically employ fewer than 100 employees, and because they specialize in Drupal, many of these professional services companies contribute frequently and are a huge part of our community. Examples are Hook42, Centarro, The Big Blue House, Vardot, etc. |
Digital marketing agencies | Larger full-service agencies that have marketing-led practices using a variety of tools, typically including Drupal, Adobe Experience Manager, Sitecore, WordPress, etc. They tend to be larger, with many of the larger agencies employing thousands of people. Examples are Wunderman, Possible and Mirum. |
System integrators | Larger companies that specialize in bringing together different technologies into one solution. Example system agencies are Accenture, TATA Consultancy Services, Capgemini and CI&T. |
Hosting companies | Examples are Acquia, Rackspace, Pantheon and Platform.sh. |
End users | Examples are Pfizer or bio.logis Genetic Information Management GmbH. |
A few observations:
- Almost all of the sponsors in the top 30 are traditional Drupal businesses with fewer than 50 employees. Only five companies in the top 30 — Pfizer, Google, CI&T, bio.logis and Acquia — are not traditional Drupal businesses. The traditional Drupal businesses are responsible for almost 80% of all the credits in the top 30. This percentage goes up if you extend beyond the top 30. It’s fair to say that Drupal’s maintenance and innovation largely depends on these traditional Drupal businesses.
- The larger, multi-platform digital marketing agencies are barely contributing to Drupal. While more and more large digital agencies are building out Drupal practices, no digital marketing agencies show up in the top 30, and hardly any appear in the entire list of contributing organizations. While they are not required to contribute, I’m frustrated that we have not yet found the right way to communicate the value of contribution to these companies. We need to incentivize each of these firms to contribute back with the same commitment that we see from traditional Drupal businesses
- The only system integrator in the top 30 is CI&T, which ranked 4th with 795 credits. As far as system integrators are concerned, CI&T is a smaller player with approximately 2,500 employees. However, we do see various system integrators outside of the top 30, including Globant, Capgemini, Sapient and TATA Consultancy Services. In the past year, Capgemini almost quadrupled their credits from 46 to 196, TATA doubled its credits from 85 to 194, Sapient doubled its credits from 28 to 65, and Globant kept more or less steady with 41 credits. Accenture and Wipro do not appear to contribute despite doing a fair amount of Drupal work in the field.
- Hosting companies also play an important role in our community, yet only Acquia appears in the top 30. Rackspace has 68 credits, Pantheon has 43, and Platform.sh has 23. I looked for other hosting companies in the data, but couldn’t find any. In general, there is a persistent problem with hosting companies that make a lot of money with Drupal not contributing back. The contribution gap between Acquia and other hosting companies has increased, not decreased.
- We also saw three end users in the top 30 as corporate sponsors: Pfizer (453 credits), Thunder (659 credits, up from 432 credits the year before), and the German company, bio.logis (330 credits). A notable end user is Johnson & Johnson, who was just outside of the top 30, with 221 credits, up from 29 credits the year before. Other end users outside of the top 30, include the European Commission (189 credits), Workday (112 credits), Paypal (80 credits), NBCUniversal (48 credits), Wolters Kluwer (20 credits), and Burda Media (24 credits). We also saw contributions from many universities, including the University of British Columbia (148 credits), University of Waterloo (129 credits), Princeton University (73 credits), University of Austin Texas at Austin (57 credits), Charles Darwin University (24 credits), University of Edinburgh (23 credits), University of Minnesota (19 credits) and many more.
It would be interesting to see what would happen if more end users mandated contributions from their partners. Pfizer, for example, only works with agencies that contribute back to Drupal, and uses Drupal’s credit system to verify their vendors’ claims. The State of Georgia started doing the same; they also made Open Source contribution a vendor selection criteria. If more end users took this stance, it could have a big impact on the number of digital agencies, hosting companies and system integrators that contribute to Drupal.
While we should encourage more organizations to sponsor Drupal contributions, we should also understand and respect that some organizations can give more than others and that some might not be able to give back at all. Our goal is not to foster an environment that demands what and how others should give back. Instead, we need to help foster an environment worthy of contribution. This is clearly laid out in Drupal’s Values and Principles.
How diverse is Drupal?
Supporting diversity and inclusion within Drupal is essential to the health and success of the project. The people who work on Drupal should reflect the diversity of people who use and work with the web.
I looked at both the gender and geographic diversity of Drupal.org contributors. While these are only two examples of diversity, these are the only diversity characteristics we currently have sufficient data for. Drupal.org recently rolled out support for Big 8/Big 10, so next year we should have more demographics information
Gender diversity
The data shows that only 8% of the recorded contributions were made by contributors who do not identify as male, which continues to indicate a wide gender gap. This is a one percent increase compared to last year. The gender imbalance in Drupal is profound and underscores the need to continue fostering diversity and inclusion in our community.
Last year I wrote a post called about the privilege of free time in Open Source. It made the case that Open Source is not a meritocracy, because not everyone has equal amounts of free time to contribute. For example, research shows that women still spend more than double the time as men doing unpaid domestic work, such as housework or childcare. This makes it more difficult for women to contribute to Open Source on an unpaid, volunteer basis. It’s one of the reasons why Open Source projects suffer from a lack of diversity, among others including hostile environments and unconscious biases. Drupal.org’s credit data unfortunately still shows a big gender disparity in contributions:
Ideally, over time, we can collect more data on non-binary gender designations, as well as segment some of the trends behind contributions by gender. We can also do better at collecting data on other systemic issues beyond gender alone. Knowing more about these trends can help us close existing gaps. In the meantime, organizations capable of giving back should consider financially sponsoring individuals from underrepresented groups to contribute to Open Source. Each of us needs to decide if and how we can help give time and opportunities to underrepresented groups and how we can create equity for everyone in Drupal.
Geographic diversity
When measuring geographic diversity, we saw individual contributors from six continents and 114 countries:
Contribution credits per capita calculated as the amount of contributions per continent divided by the population of each continent. 0.001% means that one in 100,000 people contribute to Drupal. In North America, 5 in 100,000 people contributed to Drupal the last year.
Contributions from Europe and North America are both on the rise. In absolute terms, Europe contributes more than North America, but North America contributes more per capita.
Asia, South America and Africa remain big opportunities for Drupal, as their combined population accounts for 6.3 billion out of 7.5 billion people in the world. Unfortunately, the reported contributions from Asia are declining year over year. For example, compared to last year’s report, there was a 17% drop in contribution from India. Despite that drop, India remains the second largest contributor behind the United States:
The top 20 countries from which contributions originate. The data is compiled by aggregating the countries of all individual contributors behind each issue. Note that the geographical location of contributors doesn’t always correspond with the origin of their sponsorship. Wim Leers, for example, works from Belgium, but his funding comes from Acquia, which has the majority of its customers in North America.
Top contributor details
To create more awareness of which organizations are sponsoring the top individual contributors, I included a more detailed overview of the top 50 contributors and their sponsors. If you are a Drupal developer looking for work, these are some of the companies I’d apply to first. If you are an end user looking for a company to work with, these are some of the companies I’d consider working with first. Not only do they know Drupal well, they also help improve your investment in Drupal.
Rank | Username | Issues | Volunteer | Sponsored | Not specified | Sponsors |
---|---|---|---|---|---|---|
1 | kiamlaluno | 1610 | 99% | 0% | 1% | |
2 | jrockowitz | 756 | 98% | 99% | 0% | The Big Blue House (750), Memorial Sloan Kettering Cancer Center (5), Rosewood Marketing (1) |
3 | alexpott | 642 | 6% | 80% | 19% | Thunder (336), Acro Media Inc (100), Chapter Three (77) |
4 | RajabNatshah | 616 | 1% | 100% | 0% | Vardot (730), Webship (2) |
5 | volkswagenchick | 519 | 2% | 99% | 0% | Hook 42 (341), Kanopi Studios (171) |
6 | bojanz | 504 | 0% | 98% | 2% | Centarro (492), Ny Media AS (28), Torchbox (5), Liip (2), Adapt (2) |
7 | alonaoneill | 489 | 9% | 99% | 0% | Hook 42 (484) |
8 | thalles | 488 | 0% | 100% | 0% | CI&T (488), Janrain (3), Johnson & Johnson (2) |
9 | Wim Leers | 437 | 8% | 97% | 0% | Acquia (421), Government of Flanders (3) |
10 | DamienMcKenna | 431 | 0% | 97% | 3% | Mediacurrent (420) |
11 | Berdir | 424 | 0% | 92% | 8% | MD Systems (390) |
12 | chipway | 356 | 0% | 100% | 0% | Chipway (356) |
13 | larowlan | 324 | 16% | 94% | 2% | PreviousNext (304), Charles Darwin University (22), University of Technology, Sydney (3), Service NSW (2), Department of Justice & Regulation, Victoria (1) |
14 | pifagor | 320 | 52% | 100% | 0% | GOLEMS GABB (618), EPAM Systems (16), Drupal Ukraine Community (6) |
15 | catch | 313 | 1% | 95% | 4% | Third & Grove (286), Tag1 Consulting (11), Drupal Association (6), Acquia (4) |
16 | mglaman | 277 | 2% | 98% | 1% | Centarro (271), Oomph, Inc. (16), E.C. Barton & Co (3), Gaggle.net, Inc. (1), Bluespark (1), Thinkbean (1), LivePerson, Inc (1), Impactiv, Inc. (1), Rosewood Marketing (1), Acro Media Inc (1) |
17 | adci_contributor | 274 | 0% | 100% | 0% | ADCI Solutions (273) |
18 | quietone | 266 | 41% | 75% | 1% | Acro Media Inc (200) |
19 | tim.plunkett | 265 | 3% | 89% | 9% | Acquia (235) |
20 | gaurav.kapoor | 253 | 0% | 51% | 49% | OpenSense Labs (129), DrupalFit (111) |
21 | RenatoG | 246 | 0% | 100% | 0% | CI&T (246), Johnson & Johnson (85) |
22 | heddn | 243 | 2% | 98% | 2% | MTech, LLC (202), Tag1 Consulting (32), European Commission (22), North Studio (3), Acro Media Inc (2) |
23 | chr.fritsch | 241 | 0% | 99% | 1% | Thunder (239) |
24 | xjm | 238 | 0% | 85% | 15% | Acquia (202) |
25 | phenaproxima | 238 | 0% | 100% | 0% | Acquia (238) |
26 | mkalkbrenner | 235 | 0% | 100% | 0% | bio.logis Genetic Information Management GmbH (234), OSCE: Organization for Security and Co-operation in Europe (41), Welsh Government (4) |
27 | gvso | 232 | 0% | 100% | 0% | Google Summer of Code (214), Google Code-In (16), Zivtech (1) |
28 | dawehner | 219 | 39% | 84% | 8% | Chapter Three (176), Drupal Association (5), Tag1 Consulting (3), TES Global (1) |
29 | e0ipso | 218 | 99% | 100% | 0% | Lullabot (217), IBM (23) |
30 | drumm | 205 | 0% | 98% | 1% | Drupal Association (201) |
31 | gabesullice | 199 | 0% | 100% | 0% | Acquia (198), Aten Design Group (1) |
32 | amateescu | 194 | 0% | 97% | 3% | Pfizer, Inc. (186), Drupal Association (1), Chapter Three (1) |
33 | klausi | 193 | 2% | 59% | 40% | jobiqo – job board technology (113) |
34 | samuel.mortenson | 187 | 42% | 42% | 17% | Acquia (79) |
35 | joelpittet | 187 | 28% | 78% | 14% | The University of British Columbia (146) |
36 | borisson_ | 185 | 83% | 50% | 3% | Calibrate (79), Dazzle (13), Intracto digital agency (1) |
37 | Gábor Hojtsy | 184 | 0% | 97% | 3% | Acquia (178) |
38 | adriancid | 182 | 91% | 22% | 2% | Drupiter (40) |
39 | eiriksm | 182 | 0% | 100% | 0% | Violinist (178), Ny Media AS (4) |
40 | yas | 179 | 12% | 80% | 10% | DOCOMO Innovations, Inc. (143) |
41 | TR | 177 | 0% | 0% | 100% | |
42 | hass | 173 | 1% | 0% | 99% | |
43 | Joachim Namyslo | 172 | 69% | 0% | 31% | |
44 | alex_optim | 171 | 0% | 99% | 1% | GOLEMS GABB (338) |
45 | flocondetoile | 168 | 0% | 99% | 1% | Flocon de toile (167) |
46 | Lendude | 168 | 52% | 99% | 0% | Dx Experts (91), ezCompany (67), Noctilaris (9) |
47 | paulvandenburg | 167 | 11% | 72% | 21% | ezCompany (120) |
48 | voleger | 165 | 98% | 98% | 2% | GOLEMS GABB (286), Lemberg Solutions Limited (36), Drupal Ukraine Community (1) |
49 | lauriii | 164 | 3% | 98% | 1% | Acquia (153), Druid (8), Lääkärikeskus Aava Oy (2) |
50 | idebr | 162 | 0% | 99% | 1% | ezCompany (156), One Shoe (5) |
Limitations of the credit system
It is important to note a few of the current limitations of Drupal.org’s credit system:
- The credit system doesn’t capture all code contributions. Parts of Drupal are developed on GitHub rather than Drupal.org, and often aren’t fully credited on Drupal.org. For example, Drush is maintained on GitHub instead of Drupal.org, and companies like Pantheon don’t get credit for that work. The Drupal Association is working to integrate GitLab with Drupal.org. GitLab will provide support for “merge requests”, which means contributing to Drupal will feel more familiar to the broader audience of Open Source contributors who learned their skills in the post-patch era. Some of GitLab’s tools, such as in-line editing and web-based code review will also lower the barrier to contribution, and should help us grow both the number of contributions and contributors on Drupal.org.
- The credit system is not used by everyone. There are many ways to contribute to Drupal that are still not captured in the credit system, including things like event organizing or providing support. Technically, that work could be captured as demonstrated by the various non-product initiatives highlighted in this post. Because using the credit system is optional, many contributors don’t. As a result, contributions often have incomplete or no contribution credits. We need to encourage all Drupal contributors to use the credit system, and raise awareness of its benefits to both individuals and organizations. Where possible, we should automatically capture credits. For example, translation efforts on https://localize.drupal.org are not currently captured in the credit system but could be automatically.
- The credit system disincentives work on complex issues. We currently don’t have a way to account for the complexity and quality of contributions; one person might have worked several weeks for just one credit, while another person might receive a credit for 10 minutes of work. We certainly see a few individuals and organizations trying to game the credit system. In the future, we should consider issuing credit data in conjunction with issue priority, patch size, number of reviews, etc. This could help incentivize people to work on larger and more important problems and save smaller issues such as coding standards improvements for new contributor sprints. Implementing a scoring system that ranks the complexity of an issue would also allow us to develop more accurate reports of contributed work.
All of this means that the actual number of contributions and contributors could be significantly higher than what we report.
Like Drupal itself, the Drupal.org credit system needs to continue to evolve. Ultimately, the credit system will only be useful when the community uses it, understands its shortcomings, and suggests constructive improvements.
A first experiment with weighing credits
As a simple experiment, I decided to weigh each credit based on the adoption of the project the credit is attributed to. For example, each contribution credit to Drupal core is given a weight of 11 because Drupal core has about 1,1 million active installations. Credits to the Webform module, which has over 400,000 installations, get a weight of 4. And credits to Drupal’s Commerce project gets just 1 point as it is installed on fewer than 100,000 sites.
The idea is that these weights capture the end user impact of each contribution, but also act as a proxy for the effort required to get a change committed. Getting a change accepted in Drupal core is both more difficult and more impactful than getting a change accepted to Commerce project.
This weighting is far from perfect as it undervalues non-product contributions, and it still doesn’t recognize all types of product contributions (e.g. product strategy work, product management work, release management work, etc). That said, for code contributions, it may be more accurate than a purely unweighted approach.
The top 30 contributing individuals based on weighted Drupal.org issue credits.
The top 30 contributing organizations based on weighted Drupal.org issue credits.
Conclusions
Our data confirms that Drupal is a vibrant community full of contributors who are constantly evolving and improving the software. It’s amazing to see that just in the last year, Drupal welcomed more than 8,000 individuals contributors and over 1,100 corporate contributors. It’s especially nice to see the number of reported contributions, individual contributors and organizational contributors increase year over year.
To grow and sustain Drupal, we should support those that contribute to Drupal and find ways to get those that are not contributing involved in our community. Improving diversity within Drupal is critical, and we should welcome any suggestions that encourage participation from a broader range of individuals and organizations.