[development] Build or Buy?

Khalid B kb at 2bits.com
Tue Apr 18 16:43:53 UTC 2006

> Anyway, there are some __very under-represented__ tools called 'pat', or PHP
> Application Tools.  They are open-source and they are brilliant.
> <http://www.php-tools.net/site.php>
> Drupal should really consider using parts of this system. It provides all
> kinds of rock-solid code, professional development of code, and a
> lightning-fast PHP templating system, complete with cacheable templates.
> I think others might want to check these tools out.  They are not "beginner"
> really, but they are still not hard to use.  (I would say Beginner Plus is
> about all that's needed...and some idea of PHP classes and objects.)
> I still rely on 'pat' to do very much of the work at a number of sites, and
> I will continue to use 'pat' even with Drupal.  I've been using 'pat' for
> about 2 years now, and I find a number of the modules to be stunning in
> their quality and clarity.
> patForms, patNewsletter, patRSS, patTemplate, and more.

Hi Gary

I would like to comment on your post above in another topic.

This is the usual "build" or "buy" debate.

Years ago when I started with Drupal, I was wondering like you why
we do not use other tools that exist out there. I saw a lot of the resistance
to integrate stuff from other projects as the NIH mentality (Not Invented
Here), and reinventing the wheel.

Over time, I started to see that what makes Drupal unique is that
we put in it stuff that we a) build to fit the need, and b) control ourselves.

One bad case where we relied on a third part component (xmlrpc library),
that was unmaintained, caused us severe headaches with security at
one point. We rewrote it from scratch to get over this.

Another point is the javascript stuff in core. There are libraries out there
(Scriptalicious/Prototype), but they are BIG. Steven Wittens wrote a set
of minimal AJAX javascript libraries that is today in core. Jeff Robins
took the S/P libraries and wrote a contributed module around it.

Core is about being lean, and unbloated. It is about providing powerful
yet simple APIs for everyine to use with the least code possible.

As long as the license is GPL, feel free to write a contributed module
around anything that already exists out there. It is all about choice:
those who want lean will stick with core, those who do not mind the
bloat and want the functionality will pick the contrib part.

If something really stands out in contrib, it becomes a candidate for
core with a little "marketing" and persuasion, but it has to be really
outstanding to be included.

Just my $0.02

More information about the development mailing list