NYCPHP Meetup

NYPHP.org

[joomla] Drupal and Joomla

Gary Mort garyamort at gmail.com
Fri Jan 13 17:52:13 EST 2012


On 1/9/2012 4:57 PM, Anthony McDonald wrote:
>
> I am new to the group but I would like to know if 10 minutes could be 
> put aside to discuss Drupal and Joomla at the next meeting.  I am new 
> to CMSs, but they all seem to do the same thing (organize data with 
> MYSQL and display the content in defined html <div>s).
> What I've come across in my research is the notion that Drupal is more 
> powerful than Joomla. I don't think so, but beleive the:
> Drupal community is "smaller" and more "Enfranchised", and the
> Joomla community is "Larger and less Enfranchised".
> Is this by design?
>

Drupal cannot be installed without a good deal of technical competence, 
know how, and at least a passing familiarity with PHP.
Drupal "components" [called modules] can't be installed/configured 
without the same level of knowledge.
Drupal "components" often are far from being complete mini-applications 
and require a coder to complete them.  They are solutions that worked 
for a specific use case and can be made to work with others.
Good Drupal "components" are generally all freely available.

Drupal provides an extremely mature, rich and consistent programming 
platform, which makes it easy and fast to extend it with new features.
Drupal has an extremely user friendly /end user/ interface for adding 
new content, editing things, etc.
Drupal coding is functional in nature.

Joomla can be installed and configured with a much lower level of knowledge.
Joomla components are simple to install and configure.
Joomla components are often full fledged, featureful mini applications 
which are easy to configure for specific usage.
Good Joomla components are often commercial in nature[though GPL 
licensed] and require a fee to download and install

Joomla provides a mature programming platform - but it is not very rich 
and is very inconsistent - which can make it more time consuming to make 
changes and add new features.
Joomla has a poor end user interface for adding new content, editing 
content, etc.
Joomla coding is object oriented in nature.


The functional vs object oriented is mainly a matter of taste.  I prefer 
OO coding, so I prefer Joomla! - but you can still build powerful apps 
with functional code.

Consistent vs inconsistent is a matter of naming conventions.  Once you 
learn the Drupal way of coding, naming functions, etc you will find most 
add ons follow that model - so it makes it much easier for an 
experienced Drupal coder to understand the whole website.  Joomla! on 
the other hand has been changing, a lot, from version 1.0 to 2.5 so 
there are many different ways of doing things - and the add ons often 
create their own new ways of doing things.  So being an experienced 
Joomla! programmer isn't of much advantage to understanding all the code 
your using.

Rich means that there are lots of opportunities to override the system 
and do something different.  As a trivial example, whenever a query is 
built to access the database there is a hook which can be used to modify 
the query before it is run.  This means it is dead simple to design a 
multi-domain content platform using a single install - you can have a 
hook that when Drupal goes to lookup a content item, it adds a check to 
make sure that content item is published for that domain.  And the proof 
is a number of mature multi-domain extensions for Drupal.

Joomla! doesn't have one single hook/plugin event in the database driver 
so there is no chance to make any changes.  In fact, the Joomla! plugin 
system is lacking in many hooks...and from looking on the list it seems 
that the choice of events is based on what the core developers want to 
do with Joomla!.  While adding a plugin event is relatively simple, most 
suggestions for new events get shot down right away.

-Gary



More information about the Joomla mailing list