Get updates and news:
Want to get Lullabot article, videocast, and podcast announcements delivered right to your in-box? Let us know your email address (we won't share it) and we'll let you know when anything exciting happens.

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.

Comments

Look at the date.

Look at the date.

I'm sure it has been

I'm sure it has been mentioned (I think webchick mentioned it in an old podcast?) but wouldn't having module ratings help here?
Modules could be officially "sanctioned" that adhere to the module developer guidlines.
By default only officially sanctioned modules are displayed with a switch to display all?
The difficult part is "who sanctions modules"?
I agree, it shouldn't be flatly closed. Maybe a module hasn't been developed yet that could have an impact like CCK or Views?

damn ... it's the 2nd of

damn ... it's the 2nd of April down here so I didn't pick up on it ;)
I should of known!

I still think we should make

I still think we should make Drupal closed source!

April Fools?

This is a huge variation in the direction I thought Drupal was headed. First question presented by our guys "this must be an April Fools joke" ... please tell me this is not the direction Drupal is going.

Here's a YouTube video

Here's a YouTube video explaining how you can circumvent the shutdown and upload new modules to drupal.org:

http://www.youtube.com/watch?v=oHg5SJYRHA0

LOL!

LOL!

hmmmm...

man, that's really simple and easy to do. can't want to use that. thanks!

It will likely decentralize modules

I cannot imagine that this will stop new modules from being created; they will just be hosted elsewhere - various elsewheres. That will make them harder to find and less standard probably. I wonder if this is going to be one of those "law of unintended consequences" decisions.

It seems like this is an attempt at quality control by (binary!) seniority rather than by merit or popularity (widespread usage) or currency (still maintained).

Being more concrete, the location community sees a need to revamp the underpinnings of the geolocation, probably dropping the current location module, gmap etc. That is, create a few new modules with a better architecture, rather than modify existing ones. Will that have to be done elsewhere?

How about at least allowing new replacements for modules which do not get ported to new versions? If some of the location related modules are never ported to D6 (perhaps for good reason), could we "substitute" some new ones in the same category?

The reasons are good as you say, but perhaps the solution is not the only option.

Haven't laughed so loud since...

...they wrote "the road to Drupal Hell"...

Even though it is disturbing that parody is even possible on this topic :/

April Fools!!! From Buenos Aires!

Victor Kane (kicking himself for not posting an April Fools)
http://awebfactory.com.ar

Rick Astley got the solution

Heh. This is a good one. Because you could never be sure...
Come on, Jeff. The alien invasion is already here. I always knew you couldn't be human... I got the proof and played some Lullabot podcasts backwards. Guess what... Jeffs Voice gets dark and gloomy and sais "... we are not going to take over ... we already did ... pooor Humans from Terra... "

Stop the rot

I think it's a great idea! Let's close the repository and stop giving out CVS access too. That'll teach those pesky developers who start 50 projects and don't have time to manage them properly (not naming any names, you know who you are).

I can't see the point of PHP Template, why don't we just use straight PHP? Saves learning all those new functions.

While we're at it, just make a page type and embed everything into that.

If you need to hack core, then I say - just go for it. You probably won't bother to update Drupal or any of your modules anyway.

Cost / Benefit

Jeff, I couldn't agree with you more.

The cost of maintaining a repository of code that nobody uses just isn't justifiable.

It's common knowledge that the Drupal module system is simply a "me too" feature added at the last minute by the core developers in order to play catch-up with real CMSs.

APIs, blah, blah, that kind of talk is so 1995.

Shut it down.

dude, this is so obviously

dude, this is so obviously an april fool's joke.

Spoilsport :P

Spoilsport :P

You guys stink...

...I was totally fished-in hook, line, and sinker on this one. Doh!

Hey is this a joke???

But to think about it .... if I tried a new module everyday it would take years to get through whats there now....

But then I could use the custom time module from gmail and be back where I started ....

Keep up the great work.

More FrontPage!

I have often thought to myself, "Where is the FrontPage theme engine?"

:)

Is this an April Fools'

Is this an April Fools' joke? Or is this something really in the works? I couldn't figure out from the article!

Since we're throwing out ideas here...

I think closing down all future development of contributed modules is a great idea... I have a terrible time keeping up with all the new modules. Surely there are plenty there to last for years.

Modules, schmodules... I mean... can't we take a rest already !?!

I think more time should be spent on developing unique .ico files for the drupal upload your icon system. Now that is something that could just change the world in my humble opinion.

The future is JavaScript

With JavaScript 2.0 just around the corner, I say closing down contrib is the first step. The second step is closing down core. All new functionality should be done in the browser.

Modules

Hopefully this doesn't affect the new rickroll module.

Well this really shouldn't

Well this really shouldn't effect that module because it just got committed to core.

voting

voting.

you almost had me....

You had me going until the line...."Where is the FrontPage theme engine?".....ah, thanks for this post. It's refreshing.

really?

The funny thing is that I was pouring myself over all the modules today and wishing for a voting/reputation ranking feature...

this does highlight that need on drupal.org...

but lord that would be weird to do a lock down on that. But as an really good April fools joke there is that touch of almost real due to the level of frustration.

reviews

There's a module review and ranking system over on http://drupalmodules.com/

This must be a joke

.. because the whole drupal.org site does not mention about that.

But, I had realy a shock when I was reading this article today ;-)

unfair!

this is unfair, I read this in my mail on the second of April and you got me puzzled for more then a micro second... :-)

There was a dead giveaway

Login Toboggan is Jeff's module! That's what first registered on my Sarcasmatron 3000. Besides does anybody really download the entire freakin' module repository?!?

I almost cried

After spending almost a week getting my first contributed module ready for prime time, I couldn't help but take this seriously.

Luckily after the jump from the e-mail notification, it became more and more obviously an April Fools joke.

By the way, I think Login Toboggan is the most descriptive module name in the entire repository, if only I could remember how to spell toboggan...

Officially-sanctioned Modules

I agree that this is a difficult challenge for the community to get its arms around. I wouldn't want to stifle the grassroots momentum that has made Drupal so successful or to discourage new module developers from contributing.

On the other side of the coin, I have personally found it confusing when there are multiple modules offering similar functionality. Some modules have been better supported and coexist with other modules for a more integrated functionality set. For example, the CCK-related set of modules are well-integrated and well-supported. Other modules seem to have minimal developer support, have less functionality and are redundant to the better supported versions. When searching for a module to address a specific need, it can often take some time and thorough research to determine which is the best one to select.

I think having a set of 'officially-sanctioned' modules would help greatly in making it easier to select a module when there are redundant options available. Sanctioned modules would have an indicator in the search results. Also, if a new developer sees that there is an officially sanctioned module, they don't have to spend their time reinventing the wheel. They can channel their energies into improving the sanctioned module or creating something entirely new that hasn't yet been addressed by the community. So, I think it would be a plus for both the user/webmaster side as well as the developer side.

Ideally, Drupal could offer the core installation (like today), plus a full installation with all of the sanctioned modules included. This would make it super easy for a new webmaster to get the 'complete' set of functionality and make it a no-brainer as to which modules to select. I understand that this would take additional effort to package the full installation, but it would be very useful.

These are my thoughts and I would love to hear what everyone else thinks!

OK, got me...

I started my answer yesterday before I saw this was an April Fool's joke. This morning I saw I still had the tab open and figured I'd finish my response. Rats...got me...!

Nonetheless, I would love a better way of wading through the redundant modules out there and think sanctioned modules could be something to consider!

The Joke point to a real direction

Every joke has a seed of truth in it. Moving all modules to drupalmodules.com is a great idea! The site is much easier to navigate, shows similar modules within seconds, and saves tons of time.

Truth is stranger than fiction...

The top story would not have been so believable if not for a substantial element of truth in it. All of us have struggled with the sheer mass of contributed modules and in finding the actual modules that are great!

I would like to see half of this April fools joke being implemented - a tier of vetted and tested module between "core" and "contrib". A "vetted" or "tested" layer of modules, just below core.

This will save a vast amount of time for everybody in refining their selection to include only the quality and currently maintained stuff.

Most importantly is the requirement "currently maintained" - I hit problems and when viewing the issue queue I would often discover reams of reports concerning the same issue that have been unattended to since the release of the module. If I had the skill I would have fixed it, and posted it, but I don't have those programming skills. So invariably trying out one or another module translates to wasted time and abandoning the module.

Explanation

Here's a video about the Repository being closed:

http://www.youtube.com/watch?v=eBGIQ7ZuuiU

zengine

yeah, tell me about it... whoever is maintaining zengine is just not pulling his weight. ;)

"isn't really a theme engine at all" -- classic. Great post.

urg gurgle

Oh snap. It's the 10th of April and I got DONE! That's what I get for browsing Lullabot.com

Also a joke?

So was the encoding error that resulted in insertion of the "Â" into "2¢" in the title also an April Fool's joke?

Post new comment

The content of this field is kept private and will not be shown publicly.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <blockquote> <h2> <h3>
  • Lines and paragraphs break automatically.
  • Use <!--pagebreak--> to create page breaks.
  • You may post code using <code>...</code> (generic) or <?php ... ?> (highlighted PHP) tags.
  • Web page addresses and e-mail addresses turn into links automatically.

More information about formatting options