Drupal and its community issues

I love Drupal. I really do, even if many people do not understand why (one day I will explain to you what you don’t see, guys). I’ve been working with it since the version 4.6. Then, during the 2008/09 I stopped for like a year (for many reasons that are not worth to be told), but eventually I came back aboard, and now I am also the “specialist in charge” for this platform at Ibuildings.

For a long time I never had the chance to contribute “seriously” (just some little patches here and there) in the community, but now different working conditions allow me to do so. This brought to my attention some issues in the community attitude. And when it comes to social attitudes, I am not an easy person to deal with when I get disappointed.

Maintainers can decline patches for any reason

All started with me trying to contribute a patch to the Content Copy module. You can read the whole thread as well as some of my recent posts to know about all the technical implications.

However, here I’ll be focusing on the political/sociological/philosophical aspect of the matter. I won’t talk again about avery single disagreement, but just about the most important fact: markus_pretrus refused the patch for no valid technical reasons, but just for personal concerns. He never brought a valid counter-example that proved the patch to be dangerous, he was just afraid the patch could cause harm somehow.

(In addition, he later said that I should have used CRUD APIs to update a content type and not the import procedure, never realising that what my patch did was to use CRUD APIs to enhance the import procedure and making it able to import a new content type definition into a pre-existing copy).

So, the point is: if maintainers have personal concerns not supported by any proof, they are still in the position to refuse the patch, whereas the correct behaviour should be to accept the patch, test it extensively, etc. etc. We are still talking about software, after all.

Chain of trust might be dangerous

The usual chain of trust we find in communities might be dangerous in this case, as it happened that someone else found perfectly reasonable the markus_petrus’ argument. This, of course, led to the situation where my CVS application to publish the Alternate Content Copy module (a module created out of the patch of the discord) was refused. The reason was simple: such a contribute is supposed to be a patch to the original module, not a module itself, and that makes sense. But at the same time the patch won’t be accepted. Deadlock.

The CVS application process flaw

All the story above led me to realise the big flaw of the Drupal CVS application process. They have some conditions to be respected in order for your application to be successful. And to be honest, they make sense. What a pity, though, that once you’ve got your CVS account, you can create as many projects as you want. First of all, this doesn’t make sense; secondly, it makes too easy to bypass the conditions for the application: all you have to do is to take over an abandoned module (easy) and apply for a CVS account (that you need to maintain the module you took over).

Conclusions

I am sure that everyone in the community has got the best intentions, but when a situation like mine shows up, it makes it too easy to mutate a community in an oligarchy. Also, having such a flaw in the CVS application process, makes several efforts worthless.

Tags: , , , ,

3 Responses to “Drupal and its community issues”

  1. ao2
    22 February 2010 at 3:19 pm #

    Hi Nemo, I’ve got some comments about Drupal development process (and tools) too, but I won’t hijack your post, I promise to write about those more extensively (and I also renew my promise to try Alternate Content Copy someday :P).

    For now, let me just spit out some general and incomplete thoughts, as I didn’t follow closely your particular case.

    I tend, maybe wrongly, to compare the Drupal community with the Linux kernel’s one, I’ve been in touch with both for a while and I can spot some differences: in Drupal I can taste more anxiety about what users expect and what it could be broken for them, which should be good, but modules maintainers sometimes get overly conservative because of these concerns.

    Add to that a generally less-technical active user-base (just because more heterogeneous, I guess) and you also get why a valid technical point could be overlooked: when a maintainer happens to fail (which is kind of normal) there isn’t always a backup-opinion from the community to get him/her back on the right trail. Critical posts like yours, which emphasize this kind of problems, can surely help to improve the situation, but you need to be read (Slashdot, or Drupal Planet maybe?).

    Finally, tools are also influencing everything, I hear too often of things done wrongly because CVS doesn’t allow doing otherwise, but that’s meat for my own post :)

  2. Ivo
    9 March 2010 at 3:50 pm #

    The keyword here is ‘meritocracy’. An open source project is not a democracy nor a dictatorship, although most projects do have the ‘benevolent dictator’ that rules the meritocracy.

    In a meritocracy, contributors are valued based on their merit, meaning that people that contribute useful things (be it a patch, or good feedback or other forms of community support), have a higher chance of getting things accepted. So don’t give up, try to convince enough people that your contribution is useful to others than yourself as well, and try again.

  3. Vincenzo
    10 March 2010 at 12:52 pm #

    Indeed, Ivo. I absolutely agree with that. I am quite a criticiser, but at the same time I hardly give up on things I believe in. So, that’s definitely the spirit I am in ;)