Drupal Module Statistic

I have been a Drupal Developer for a while, and have been involved in some Drupal-related projects. What I really like Drupal is the large number of available modules in the community. But sometime, when I tried to look for a Drupal module, I often ran into an abandoned module or legacy module (no release for D6) or a module has no stable release at all. So I asked myself how many usable modules available in the community, and I have the answer today.

To answer the question, I write a small script that runs through Drupal.org project pages and collects module information. The information I collect includes public release information and tags. The script will put all of these information inside a sqlite file and later I will do the statistic on the result. The sqlite database is included in the attachment section, you can use it if you want.

Ok, let's start. The good news is we have about 5786 available modules and themes for Drupal. And I will try to fingure out how many of these modules are really usable for Drupal 6 production.

Round 1: Drupal 6

The first thing I check is to filter out all useless modules, e.g: module has no releases at all. Through there're modules that are merged into Drupal core or other modules, but these modules are not too many, so it won't affect our result. After that, I want to filter out all legacy modules, e.g: module has no release for D6 and only works for D4 or D5. And the final thing is to filter out D7 modules too, these modules can not be used in D6 anyway. The result is visualize as the below graph.

[inline:chart1.png]

So, through we have more than 5000 modules, only half of them are for D6. The rest is not usable. The actual number is 3371 / 5686 modules have releases for D6.

Round 2: Stability

Now, I want to check how many of D6 modules have at least a stable release, e.g: release is recomended for production. And there're 2618 modules that have a stable release for D6. It's 78% of total Drupal 6 modules.

[inline:chart2.png]

Round 3: Update to date

The last filter is to remove stable D6 modules that have not been updated for a while, here I use June at the milestone and I check the latest releast timestamp. So, it turns out to be 45% of stable modules have not been developed since June, and only 55% are updated recently. It's 1438 modules.

[inline:chart3.png]

Conclusion

The answer is 1438 / 5786. It's about 25% of total modules are really usable, so we should change "thounds of modules" to "thoundsand of modules" in Drupal introduction video. I have no idea if it is a big number or not but I see most of these modules are for basic CMS. Social modules such as friends, or activity is far behind (activity is "active" but has no stable release since 6 months yet). The Drupal community is great but we need to improve things more and more. I think it's time to clean thing up and the first thing todo is to hide all D4, D5 modules, don't show them on the search result or the list page, only show them to user who really want to see them. It will save time for Drupal developer. And we should establish some kind of statistic for Drupal modules, I don't think the module usage is useful at all.

Bonus: Drupal 7

Another thing I can tell you is about the status of modules for D7. D7 is about to come out soon, but how many modules will be ready for D7? According to D7CX tags, we have about 159 authors who promises will release his module at the time D7 releases. And actually, there're only 60 of them have a release for D7 . Will that be great  :D ?

AttachmentSize
Charts.xlsx15.9 KB
drupal.sqlite2.14 MB

Add new comment