Closing the Drupal Module Repository: My 2¢

By now, most of you have probably heard about the plans to close the Drupal Contrib Repository (DCR) to new module projects. While I understand and generally agree with most of the reasons for this decision, I wonder if it isn't a bit hasty or shortsighted.

First let me outline my understanding of the reasons behind this decision:

There are currently close to 2,750 modules in the DCR. These are the modules that have been created by and are maintained, to a varying degree, by the community. They are not part of the core Drupal distribution and they're quality, performance, and usefulness varies greatly. While there are general guidelines that module developers are supposed to follow when contributing their work, many developers misinterpret or outright ignore these guidelines. Many developers contribute modules which have names which are confusing and jargony (Login Toboggan!?) or just similar to other modules (Feed, FeedAPI, SimpleFeed, Feed Field -or- Link, Link Node, Link to Content, Link to Us, Links Block, Links Views RSS, Links Package).

And watching the feed of new modules, it seems like the vast majority of new modules duplicate the functionality of existing projects in one way or another. These developers may feel they have come up with a better way to implement a given feature, but the truth is that usually their modules are just confusing in different ways.

Additionally, a simple download of the DCR is almost 500MB. In addition to the bandwidth costs shouldered by the Drupal Association, we need to consider Drupal administrators across the globe who have only a dial-up connection. A download of this size would take almost a week over a 56K modem connection and that's assuming that no one tries to call in during the download.

By closing the DCR to new modules, more focus can be put on improving the modules that are currently in the repository. Additionally, more developers can, and should, focus on the themes, theme engines, install profiles, and translations repositories. Since I am an American, I don't really know much about the translations repository, but there is certainly a lot of work that can be done creating more and better themes, theme template engines, and installation profiles.

For instance, there are only four different contributed theme engines and this includes Zengine, which is poorly maintained, poorly documented, and isn't really a theme engine at all. Where is the FrontPage theme engine? Clearly more work needs to happen in this area. Perhaps better theme engines would lead to better themes, an area which also appears to be lacking in the DCR. A cursory review of the themes directory leads one to believe that Drupal does not lend itself well to building beautiful websites. I agree that more effort could be put into creating more beautiful, creative themes to act as an example of the flexibility of Drupal's presentational layer.

Certainly Drupal's explosion in popularity has lead to an explosion in modules offering a great wealth of flexibility. And I can understand the want to focus on the quality of the existing modules over quantity. And yes, modules like CCK and Views certainly offer administrators the flexibility that they need without having to write another module. But completely closing the module repository to new projects!?

Of course, I am unable to think of any functionality that a website might need which doesn't already have an existing module that can handle it. But we're talking about the future here! Potential advances in science and technology could merit a new module or two over the next ten years. Perhaps something to do with the SkyNet project, or to integrate with alien technologies during the takeover.

I just think that we, the Drupal Development Community (DDC), should keep our options open, never say "never", and continue to foster development efforts in the hopes that one day someone may have a new idea for a module to improve Drupal and thus, the Internet.

Published in:

Get in touch with us

Tell us about your project or drop us a line. We'd love to hear from you!