[development] One core, many distributions

Jose A. Reyero jareyero at wanadoo.es
Sat Nov 19 18:31:45 UTC 2005

Well, I was writing this as a reply to a reply to the previous
'Encouraging collaboration' thread, but it's grown too big, so sorry,
but I want to open a new thread.

A "great developer platform" is how I see Drupal, and I'm sure most of
the developers too. But the thing is: we need some focus, some targets
to agree on.

The problem is: currently we are pretending Drupal -core- to be too many
things at the same time, mostly that great developer platform (1), but
also an out of the box ready to use community portal (2) or kind of
that. And the consequence is we are handling too many issues when fixing
bugs for 'Drupal core' that are too specific of some more 'user level,
site specific' modules.

The main point is *core shouldn't need to be an out of the box nice
site* that anyone can use, and we need to jump in the *one core, many
distributions* idea for that. And that need to be an out of the box nice
site is actually consuming far more effort than what could be a proper
CMS core.

IMHO we are wasting efforts in some higher level modules, that should be
more focused to get what is properly the core system working right in
the first place. And I'm not making any judgement about which modules
should be in core and which ones not. I mean,, ok to have a few nice
modules in core, but when a module grows too much, because people wants
all that nice features, and them to be easy to set up, we can a) move it
out of 'core' or b) provide a basic one in core that can be extended by
a contrib module.

Just as an example -and I have nothing against forum module: At some
point, we are duplicating the taxonomy interface to handle a forum
specific vocabulary. Then, this causes some bug -like this one, again
just an example: http://drupal.org/node/24274 -, and then we have a 
*core bug*, module specific, but as it is a core module,  this one  has
the same importance -in the bug tracking system- as any other critical
bug -like a basic API not working properly.

Notice that on one side we have a very big module in core to handle
forums, but on the other side we don't have an small one for what could
be a badly needed feature for other modules to build upon: a basic image
node module. -again just an example, but I'm not talking about forum vs
image at all.

And as a side effect... How many modules you need to patch for what
could be a small 'core patch' -if core was smaller- before your patch
can be even considered because you can say at least 'it applys to HEAD'
?? And how many modules you need to re-patch again because of a minimum
detail has changed in the main core patch during the follow up on the
issue tracker?

So I want to insist on the idea of "many distributions to serve
different sites, one core to serve them all" --nice 'mantra', isn't it? ;-)

But, anyway, that's an old idea. Just look at Linux.... Could you
install 'Linux' --properly understood as the core OS- and pretend you
have a nice OS ready to play with your computer?



Jose A. Reyero

More information about the development mailing list