[development] D7 contrib module development

Khalid Baheyeldin kb at 2bits.com
Mon Mar 9 00:51:00 UTC 2009


On Sun, Mar 8, 2009 at 1:09 PM, Domenic Santangelo <domenic at workhabit.com>wrote:

> On Sun, Mar 8, 2009 at 8:46 AM, Stella Power <stella at stellapower.net>
> wrote:
> >
> >>   However, in the end, you get what you pay for!
> >
> > Well, Drupal is free and you don't pay for it. :)
>
> One of the things that surprised me when I started working with Drupal
> is the breadth of functionality that's left out of core. No automatic
> path aliasing? No subscribing to a post? Wait, I can't add more fields
> to my content types??? For a "Content Management System", Drupal core
> is _severely_ lacking in features.
>
> The logical end is that modules now have inflated importance to
> Drupal, because you (basically) can't do jack without at least some of
> them. This creates an odd disparity: the concept of "modules" refers
> to both one-off, unimportant, unfinished modules, AND to
> cck/views/pathauto, three modules you basically can't build a site
> without.
>

That is actually one of the strengths of Drupal. Core providing
extensibility, and
not trying to be everything for everyone, and farming out functionality to
contrib.

Contrib is where innovation happens faster than in core, because the "think
it,
code it, commit it, release it, download it, try it, improve it" cycle is
faster in
contrib. It is not dependent on a few core committers with limited times and

hundreds of tasks to get it in. People who want to try something can do it
faster
and people download and test and improve it faster as well.

The second thing is that there are many arguments of task X be done in a
certain
way, and not another. If core did something just one way, then all the
others will
be precluded without being tried in the field. By providing an extensible
framework
where people extend it in different ways, and "let the market decide" which
one is
better, or even if all of them exist at the same time, everyone wins.

Over time, we continually re-evaluate and move stuff in and out of core as
appropriate.
We pick what has been proven and get it in core, like we are doing with
fields now.
And we send other parts to contrib.

This is the open source way: It does not have to be perfect, just good
enough, and then
released to the community to tear apart, use, extend, remix, borrow,
copy/paste, ...etc.

Think of Linux: it is just a kernel and people take it and extend it, bundle
it, port it
so it runs on everything from cell phones to IBM mainframes to supercompters
and
many things in between. If Linus insisted on doing a distro early on, it may
not have
been as successful as it is now.
-- 
Khalid M. Baheyeldin
2bits.com, Inc.
http://2bits.com
Drupal optimization, development, customization and consulting.
Simplicity is prerequisite for reliability. --  Edsger W.Dijkstra
Simplicity is the ultimate sophistication. --   Leonardo da Vinci
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.drupal.org/pipermail/development/attachments/20090308/c07de29d/attachment.htm 


More information about the development mailing list