Another example of Drupal madness

darumaki - July 22, 2008 - 17:18

There appears to be a rise in Ubercart type situations recently...i.e. instead of improving existing modules, very similar modules are being launched, which dilutes development and confuses users.

I read this and it really hit the nail on the Drupal head. Drupal modules are a mess with duplicate or same like modules being created everyday. It would be better if Drupal had a primary list of module categories and only one module per category should be maintained, we should not need to have 20 different access modules to do one simple function.

I think having a core list of categories and allowing only one module per category would greatly enhance Drupal, you'll need less third party developers to maintain modules which I think would make things more productive. More developers doesn't always mean more quality.

I also think a module has to have a very clear and specific function related to the core category if it's merely a duplicate or similar to another module, instead of creating a new one, a feature request to add an additional function would be more appropriate.

Let's face it, do we really need another access module ? NO

And I greatly disagree. One

nevets - July 22, 2008 - 17:59

And I greatly disagree. One module per category would be highly restrictive, look at the modules under taxonomy and CCK. As for your examples, not all those 20 different access modules do the same thing, yes some may overlap but they provide a number of modules for controlling access to content. As a single module it would be large and the administrative interface clunky. As for ubercart it is an excellent example of why the restriction would be problematic. The e-commerence package was hard to use and more of a challenge than it should have been for small/simple e-commerence needs. Ubertcart provided not only an alternative module but has prompted improvements in the e-commerence package. If you take your argument to the extreme there would only be PC's (no macs) and only Microsoft software. So while there are module's that have a high degree of overlap, choice in general is good.

Well, I beg to disagree with

lionheart8 - July 22, 2008 - 18:23

Well, I beg to disagree with you.
Most Drupal users, including myself seem to be very much satisfied with the way Drupal is made, with its core modules and the many optional modules.

The many different modules some with overlapping functions, dont necessarily do exactly have the same features. If I make a custom Access module, that has features that I need for my projects, but which the available access module or modules do/does not have, why would that be wrong if I contributed it the community?
There are often more than a few people who may need similar features.
I think it's rather one of the strengths of Drupal to have such a big diversity of modules. Depending on what project you want, you can almost always find the right combination of modules with the features you need.

By the way, if that is considered to be a problem, it's not only Drupal doing that disservice.
Drupal for example has only one food recipe module whereas Joomla at least 5 different types. They are ALL third party, made by different developers and quite different in the way they function. What about other major categories like media, community, and so on, Joomla seems to be no better. They have thousands and certainly not all are core modules.

Which modern, widely used CMS does not follow this line?
There is always ready support here in the Forums, whenever a problem comes up or one needs some guidance ....

:)

totally agree

Phillip Mc - July 22, 2008 - 19:03

It's far better to have 1 great module, that's well supported and maintained, rather than 3 or 4 similar modules.

I also agree that there should be a 'mainstream' set of contributed modules as well. Not only are there very similar modules out there, the descriptions are often vague and for both newcomers and veterans, it's becoming a time consuming process filtering modules from the ever growing list.

Isn't the whole point of having a commmunity that we pull together rather than throw everything into the one "code well" and let everyone fend for themselves?

I find the new http://www.drupalmodules.com site very useful for filtering modules. It allows user reviews and voting, so you can at least read about other users experiences with the modules.

With respect, I disagree with the other posters on this thread who think it's fine to continue with the current work flow. It is becoming a big mess and there are better ways to channel the efforts of a community than just allow a giant mountain of modules build up, with a lot of duplicated work and replicated energy.

Nevets makes an interesting point that ubercart has helped improve the ecommerce modules.

I have used and am very familiar with both and there is only one way to describe it: INCREDIBLY FRUSTRATING. In other words, the whole idea of submitting patches is to allow people to submit improvements to modules. What's even more frustrating is that when you look at the the code, how the ubercart framework is structured and the modules, it's hard not to view it as a fork of ecommerce. So instead of having the good bits added to ecommerce a year or two ago, 2 development teams and mini-communities have been established, all going in the same direction....and all with the exact same goals - to create a robust, scalable and efficient ecommerce suite of modules for Drupal. The amount of duplicated work and code is astonishing.

For me, that's not smart community management and with all of the diluted development going on with that it's likely that a 3rd party solution, like magentocommerce, might supersede both ubercart/ecommerce as the main ecommerce solution for Drupal.

So, in my humble opinion, the module situation you have highlighted presents a community conundrum.

The problem, as I see it, isn't just about development-community management (which must be improved), there also appears to be a 'land grab' of sorts. i.e. people contributing modules so they can say they contribute modules, which is a more visible reward than submitting patches.

Some contributers have submitted hundreds of patches and hundreds of improvements to modules, but, unless you scan the commit messages or their profile page, it's not a very visible and therefore as much of a 'rewarding' task than having their username attached to a module as the developer. Which obviously beefens up portfolios/pitches to prospective clients.

So, I agree with you darumaki...the challenge is how does the Drupal team live up to the "community plumbing" claim, tackle the problem head on and remove as much duplication and confusion for users as possible.

I think you may want to read

darumaki - July 22, 2008 - 19:03

I think you may want to read the thousands of forum posts by Drupal users who have been frustrated with the lack of simplicity and order in Drupal. You might have meant to say that most developers have no problem with the way things are, they like it complicated and confusing. The fact is many Drupal users (non-developers) would agree with what I said, I would bet all your money on it too :)

All I really said was by having one approved category set and allowing one module that fits that category (or more if needed) it would greatly enhance Drupal.

It's not difficult at all, nor would it restrict anything. If you read again what I said, it makes very sound sense. Creating a new module and adding a feature are very two different things, there are many modules that are very similar and it does in fact, only confuse users, access is just one example and a valid one at that. You'll never convince me that having 50-100 modules in one category is necessary, regardless if each one does something slightly different.

I've seen modules that replace sometimes 3 or 4 other modules, it can be done. I only bring this up because I like using Drupal and want to see it become more friendly to the non-developer users.

To do list

suggestions..

Phillip Mc - July 23, 2008 - 19:24

It's a good idea to post suggestions, darumaki, like that, but, can I suggest that you keep an eye on this discussion and when others contribute their own ideas/suggestions, convert it into a feature request for drupal.org or the modules repository. Other wise, this thread will just end up dissapearing into the ether.

Many don't visit the forum anymore or that often, so your suggestions won't catch the eye of the people who matter most...the Drupal development community.

that said, here's my opinion on your 3 suggestions..i.e.

1. have one approved Drupal category list ( this would be added to the core so any new modules fit the category for easy finding. In Drupal I see a plethora of custom third party categories like MISC, this tells us nothing about what modules are listed.

Good idea, but, it might be a nightmare to reach a consensus on which modules 'graduate' to that approved category list. It also hands a sense of responsibility to the drupal team to make sure that the modules in that list are 'clean', for lack of a better word. In other words, an "approved list of modules" imply's a "list of modules that have been checked and endorsed by Drupal".

I prefer the idea of natural selection. i.e. where the community decides which modules fall into the "top list" by the amount of times a module is "in use" or has been downloaded.

Drupal 6.0 includes a special "module update checker" that automatically displays whether a module has been updated on the modules administration page. A simple counter on the amount of times a module is "pinged" by that function would indicate which contributed modules are in use the most.

Doing it that way, doesn't solve the problem of categorising modules efficiently - which is one of the main gripes, I think - but it does sidestep the issue of having an "approved list of modules" and everything that implies.

2. require module makers to match module with category, have some criteria or guidelines for developers in creating modules to make sure it fits the category and does not repeat or copy another module modus operandi.

I would go a step further and put a bit of work into the module descriptions as well. Allow for user reviews/voting (ala http://www.drupalmodules.com)

3. if module relates to a certain category and one already exists, its better to create a feature add-on to the existing module instead of re-creating the wheel

That process already exists...i.e. when a new module project is submitted for approval, there is a moderation team that decides whether this is a replication of existing functionality before it's approved and published as a project.

The difficulty with that process is that it's voluntary and it's extremely times consuming for someone to download the new module and cross check it against existing modules. More often than not...it appears that a lot of new modules are appearing almost by default.
-------------------------------------------------------------------

Not sure if that helps the discussion along or not, but, here's a few suggestions I think might work:

1. Increase the visibility and therefore the "reward" for patchers/testers.
Part of the module submission explosion is partly down to people genuinely wanting to contribute, partly down to the fact that it's easier to submit a module you just created yourself for a specific site, rather than strip itall down and submit a patch for another module and partly down to the factthat there is a greater 'reward' to be seen as a module maintainer/developer.

That shouldn't change, but, I think there should be a more visible 'reward' system for patchers and testers.

Consider the buzz Angie (webchick) must be getting for her richly deserved "best contributer" award she got recently and how good drupal citizens have also pointed out the amount of "behind the scenes" work she has done with help files, documentation team recruitment, the form api and many other, not very visible contributions to the drupal.org commuinity.

She fully deserves it, but, isn't it a shame that it was a third party (O'Reilly I think it was who awarded the accolade) that highlighted it.

Why doesn't the Drupal.org community have "contributer of the month" type awards? So the community awards other members of the community?
-------------------------------------------------------

I hope that contributes to the discussion a little. I can see where Nevets and the others are coming from...but, I think if you stand back and look at the bigger picture, there is quite a lot that can be done to improve the situation without upsetting anyone's apple cart.

EDITED: As a by the way...it might be an idea to change the title of your opening thread to something less confrontational...such as Drupal modules re-organisation - the "room for improvement" discussion.

I understand what you're

darumaki - July 24, 2008 - 09:27

I understand what you're saying, didn't mean to go over-board with this post, is there such a place to put feature request for Drupal in general, I did not know if something like that exists. I think having a forum just for feature requests or improvements would be a good idea.

This thread is just thoughts, not sure if it falls under feature request, so sorry if its the wrong place or sounds confrontational, I was trying to put some fun into the title :) I'm not sure if I can edit the initial post maybe some moderator can do that and rename it to whatever fits better.

re: module category list, I think Wordpress has really cleaned up their plugin directory nicely and the community can vote on the best plugins, etc. When I was using it, I use to always look forward to visiting the plugin directory and with Drupal I dread it. WP a good model to look at, you know a module is good when everybody gives their thumbs up.

I understand your points about having an approved list and what it may entail, change hurts, if it didn't nothing would grow.

Perhaps a project can be started to list out ways to improve these areas,
call it "Drupal Quality Control".

no need to apologise

Phillip Mc - July 24, 2008 - 13:03

There's no need to apologise for being constructive, darumaki. I think there is a lot of room for improvement.

It's just that the thread title, in particular, might rub up some in the wrong way...i.e. the very people who are responsible for maintaining the area of Drupal that you're highlighting.

I'm not sure if "Drupal quality control" is the best way of putting it. I prefer if the community reviews, votes and a "main module list" is generated via natural selection with a clear warning that "these modules are user submitted..use at your own risk" type thing.

So, you have got +1 from me for a bit more work on the community plumbing side of the modules area of Drupal.org. In particular, introducing a community review and scoring facility.

And you've got a +100000 from me if you suggest improving how patchers/testers are visibly "rewarded" on drupal.org.

The future of Drupal depends on creating standards...

erok210 - July 24, 2008 - 14:30

I'm a "newbie" to the Drupal community. I'm a 30 yr. IT executive (pseudo-programmer) who always looks for cutting edge technology to leverage. I installed my first Drupal site this week. I have looked through the forums, played with modules, themes, etc.; all looks promising.

I'm about to raise several million dollars to build an new information web site based on Drupal. (That means I'll be looking to contract some of the contributors on this site.) However, the comments posted here on module development have caused me to take a big breath before committing to this platform.

I hope that those "in charge" can take action get this under control.

Thank you for your input.
---------------
erok210, warren, nj

don't panic..

Phillip Mc - July 24, 2008 - 15:23

Hi Erok..

There's no need to panic. There already are some coding standards for Drupal and module contributers that are the most rigid of all the open source tools I have come across, in particular Joomla, wordpress and others.

The problem darumaki is really highlighting is how the module section of drupal.org is becoming swamped and getting increasingly difficult to keep up with.

Which is actually a positive in some respects...in other words, there are so many module contributions to Drupal because the development community is expanding very quickly.

The issue is community management or 'community plumbing', for lack of a better phrase.

In other words, on top of the very long list of modules, there is a lot of replicated work/code. For example you can end up with 6 modules doing the same thing, which is very frustrating and time consuming for a site developer trying to decide which module is the 'better' quality module to use.

Which in essence is bad community management and darumaki's point about having a more efficient module filtering system, is a very valid one, as every drupal site developer has to go through the exact same process...i.e. check out the 6 similar modules, before deciding on which one to use. There's no provision to provide community feedback or code scoring in terms of quality of code, efficiency, "does exactly what it says on the tin" etc. Which means there's not only a lot of wasted energy on replicated code, there's a lot of wasted energy on the users side as well.

For your own project, can I recommend you check out http://www.acquia.com Which is a new company setup by the founder of Drupal (Dries) and has raised a few million in venture capital to do a few things...one of which is to creatye a commercially supported version of Drupal.

A lot of the core drupal development team and contributers are now working full time with acquia, which may explain why things have slipped a little on drupal.org, but, having been around for a while, I think the problems aren't that difficult to iron out and I hope darumaki "promotes" this to a FEATURE REQUEST on DRUPAL.ORG.

Note for darumaki: If you haven't posted a feature request before, go to CREATE CONTENT-> ISSUE -> DRUPAL PROJECT and select either DRUPAL.ORG INFRASTURUCTURE or USER EXPERIENCE as the category and then select FEATURE REQUEST in the drop down options, so your suggestions catch the eye of the Drupal Project Team who are responsible for that side of the Drupal project.

There hasn't been any real changes to how the modules pages are presented in a few years, so it may already be a work in progress. Something along the lines of http://www.drupalmodules.com would be great.

hope that helps

Glad to hear.

erok210 - July 24, 2008 - 16:01

As a newbie, I'm still getting to know the Drupal technology, community and landscape. Your comments help and are encouraging.

I will look into http://www.acquia.com. (Side note: As a post Bell Labs UNIX person, I guess Dries' new venture confirms to me that nothing "open" remains that way.)

Thank you for your input.
---------------
erok210, warren, nj

you're welcome..

Phillip Mc - July 25, 2008 - 10:52

Side note: As a post Bell Labs UNIX person, I guess Dries' new venture confirms to me that nothing "open" remains that way.

That's an interesting observation. While I think Dries is very new to the whole venture capital culture, he's still very vocal about keeping things "open", but, as you probably know only too well coming from bell labs, in any project where there's investors who put in a few million quid looking over your shoulder, gallant intentions sometimes go by the wayside.

Most, if not all of the key/core Drupal developers & contributers are now working as full time employees with Acquia now, so, there's a great team behind what they're doing. hopefuly we will see a beta version of Carbon (the new commercially supported version of Drupal) soon.

In the meantime, I think it's good that threads like this take place. It appears some are sitting on their hands at the moment, waiting for Carbon to be released, which is understandable, but, I think we need to continue to improve the main Drupal project as much as possible.

Not really

Michelle - July 27, 2008 - 04:26

"Most, if not all of the key/core Drupal developers & contributers are now working as full time employees with Acquia now"

Definitely not all and I wouldn't even say "most". There are some key people there, yes, but there are quite a few that aren't.

" It appears some are sitting on their hands at the moment, waiting for Carbon to be released, which is understandable"

Laughable is more like it. Do you really think they're off sunning themselves somewhere just waiting for Carbon to magically appear?

Didn't we get enough of this in that 7 million train wreck?

Michelle

--------------------------------------
See my Drupal articles and tutorials or come check out life in the Coulee Region.

erm...

Phillip Mc - July 29, 2008 - 10:27

Hi Michelle,

You really need to stand back and look at the project from a distance, Michelle. Your flippant and condescending tone suggests that you're way too close to it to take an objective view.

The key people you're referring to have also beenpivotal people for the main Drupal project for the last few years. Now, you can argue until you're blue in the face that it's business as usual, but, the reality is that Drupal has come to a crossroads and a lot of people are sitting on their hands waiting to see how Carbon pans out and how it affects the main drupal.org community.

I've been at two project meetings in particular recently - both would be significant site builds in the £200k+ (€250k+) region - and both project teams had already more or less decided upon Drupal as the tool of choice with a caveat to wait for the initial release of Carbon. I suppose you could call that sunning themselves, Michelle, but most would call that risk management and if you stand back and look objectively at what's going on, it's perfectly understandable when a company are looking at investing that amount of money.

It's also very clear to anyone who has been a member of the Drupal.org community for a few years that certain areas have stagnated. The module list system on drupal.org is just one very acute illustration of stagnation.

I happen to agree with the original poster, although I have advised him/her to re-word the thread title, because it will only attract the usual overly defensive and unconstructive posts....you know the type, Michelle. They are usually posts/comments that have nothing to do with the core topic and are exclusively intended to shout someone down.

On that point and to get the discussion back on topic, do you have any suggestions that might improve the module listings area on Drupal.org? Or do you think it's great as it is and we should carry on, business as usual?

.

Michelle - July 29, 2008 - 12:56

"do you have any suggestions that might improve the module listings area on Drupal.org?"

Yeah, stop being Chicken Little and go help the folks working on the redesign.

Michelle

--------------------------------------
See my Drupal articles and tutorials or come check out life in the Coulee Region.

chicken little and the let's discuss landfill

Phillip Mc - July 29, 2008 - 13:55

thanks michelle..

Forgive me if I chicken out of joining any of the many discussions over there.

I am aware of that groups discussion. I found it last year...around october 2007...when Dries published the results of a survey that indicated that a revamped module list was top of the list of things to do wish list...hence my point earlier about things stagnating.

After popping in to see where things are at, just now, I see that there has been a final call for proposals from developers to redesign drupal.org.

Let's hope this means there is less cackling and more action, now.

drupal.org redesign

Phillip Mc - August 1, 2008 - 09:25

HI darumaki..

Spotted the following notice here on acquia.com about 6 new drupal.org redesigns that will be voted upon on monday:

http://acquia.com/blog/six-drupalorg-redesign-proposals-received-vote-mo...

afaik a module page restructuring was top of the wish-list so you might get your wishes soon.

 
 

Drupal is a registered trademark of Dries Buytaert.