The Contrib Conundrum

Photo of Greg Harvey
Fri, 2009-10-30 14:13By greg

Edit: Please read this blog post, but also please jump in on this thread - the idea is already proposed but needs community support:

And so again today it happened, as it does so many days. Someone needs to be able to do something. They Google. They search They find nothing but a few open issues or an unsuitable/unsupported contrib module. They're a developer, so after an hour of searching they think "ach, to hell with this - I'll just write something".

They do the decent thing and release their new module to the community, and *BAM*. Suddenly several people are all telling you it is a bad thing and their are already modules that do this.

Doh! =(

Today's victim is cafuego with the new allperms module. I had a similar problem some time back, which this module answers. I too failed (at the time) to find any contrib solution, but I also didn't have time to write it, so I parked the task here:

cafuego obviously found that issue on his travels, as he had the decency to pop back and post a link to his module, so I (and anyone else) would see it. Nice work, and I thank you. =)

However, within a few hours of the Drupal modules bot on Twitter announcing the new module, the issue queue had numerous mentions of other modules that do either the same, or nearly the same, thing. This is very frustrating for all concerned.

Sometimes this has happened to me and other Drupal developers have even accused me of not taking the time to search properly. This is the most infuriating accusation, as my mantra is to *always* try and find a solution before I write one. This sort of rebuke to people who are doing their best to contribute useful code is both detrimental to the community and plain rude.

I would ask *all* Drupal developers out there to remember their manners a bit and, instead of posting clipped issues with an air of irritation (or worse, accusing the contributor of being lazy when they just wrote a module and released it!!) to respond something more like this:

You see? You don't have to be rude. Spare a thought for the maintainer, just for a second. They did not intend to do a bad thing. They thought they were doing a good thing. Talk through it, don't just snap instructions at people, or they will, in all likelihood, ignore you.

(I'd like to point out at this juncture that I am in no way having a pop at JacobSingh here, who started the issue - his post is reasonable and friendly and is a *good* example of starting a conversation about a contrib module that may not be required. I'm commenting generally on behaviour I have observed in the issue queues and I won't name names or link to posts.)

On a wider point, this highlights a prevalent and serious issue with Drupal contrib. It's getting too big! I don't know how to solve this, but I have a few notes on the matter:

1. When this sort of thing happens, BE NICE! Don't be rude to the maintainer - it's usually not his/her fault.

2. The Drupal modules Twitter bot and RSS feed is really handy, but it comes too late in the day, which brings me on to:

3. Isn't it time had another content type? I would suggest there should be a Module Proposal type available to those with CVS access. PROPOSALS should be tweeted out via Twitter and included in RSS feeds, like new modules are now, and it should only be possible to create a new Project on after the Proposal has existed for two weeks and been marked as "fixed". Then a Project could be created, linked to the Proposal. If we had something like this, a lot of contrib duplication (and the bad feeling it sometimes causes) could be avoided.