NYCPHP Meetup

NYPHP.org

[joomla] Meeting reminder and Joomla 1.7 alpha release

Gary Mort garyamort at gmail.com
Thu Jun 9 11:47:39 EDT 2011


When you download Joomla currently you get 3 application in one.

Firstly, in the include and library directory, you get all the code that
is used to build a Joomla application to begin with.  The database code,
the table code, sessions, plugins, etc

Then in the main directory is a file called index.php, and the
directories: administrator, components, modules, plugins, templates, and
media
These files constitute the  joomla application - what the general user
sees when he goes to your website.  They are built using the "base"

Then in another folder called "install" is yet another Joomla
application which basically is JUST a set of screens to gather data,
create a Joomla database, and create a Joomla website

It is possible to take the base code and create a completely different
set of code which will function like Joomla in many ways, but have a
different interface for controlling it, etc.

One of the things to understand is that there are certain common tasks
when building a PHP website.  A PHP website often has to connect to a
MySQL database for data.  It has to provide a system to allow a user to
logon and a way to check to make sure the user has permission to do
various things[edit content, post comments, etc] on the website.  It
frequently needs some form of skinning/templating so the design can be
changed without changing code.  It needs some way to send system
generated emails to users.

There are thousands of ways to do all of that.  And every coder
developes his own 'favorite' way to do it.   For some things there are
"best practices" on how to do things.  On others, it is very up in the
air. 

So freelance PHP developers that go from project to project are often
having to learn what the "right" way for doing something is in that bit
of custom code.

That's where "frameworks" come into play.   A framework basically means
a collection of functions to do some of that stuff.  Frameworks can be
developed independently of any application[CakePHP, Symfony, Zend, etc]
- and they can be developed specifically for an application[Joomla,
Wordpress, Drupal].  Frameworks are documented, so instead of having to
work through the code to figure things out, you can look at the
documentation.  And wheras there may only be three or four people in the
world that understand all the functions and such in a custom application
so users are locked into them - with frameworks you can find many more
developers.

The independent frameworks generally suffer from having too many
features for things which are rarely done, and being somewhat overly
complicated.

The application frameworks generally have a problem in that often it is
not possible to separate the framework from the application[you can't
just use the User/ACL system from Wordpress, you have to have an entire
wordpress site].

Joomla sits somewhere in the middle.  About 60-80% of the "framework"
for Joomla lies in the include directory.  Depending on what pieces of
Joomla you consider base[the file management system for images is
managed by the media component for the most part - which is stored
outside include.  The user system also has a lot of needed code outside
of include.  Same with the content component, but it is debatable
whether or not you /need/ a content component.  And the same with the
template component.

Using frameworks frees developers from a lot of the "boring" bits of
code and let's them focus on what they like.  It saves time and money. 
The more familiar with a framework, the more time and money that can be
saved[or alternatively, spent on extra features]

All your Joomla Core developers also code PHP for a living.  They either
do so as freelancers, or serial entrepreneurs, or other processes.  So
even if a project their hired for is not a right fit for Joomla the CMS,
it is still often economically efficient for them to use Joomla the
Framework and build code on top of that. 

So as time goes by, with each new version of Joomla, they aim to provide
a clearer separation between the framework and the CMS.

Also keep in mind that, in my opinion, the core developers make most of
their money through other projects.  So while they have a need for a
strong Joomla Framework...they really don't care so much about the CMS. 
Their main economic benefit of having a CMS is name recognition and that
more people using it means more weird esoteric bugs are found which may
be in the framework.

It's one of the reasons why there is such a long dev lag between
versions at times.  The core team have economic motivation to keep
improving the Framework, but none on building the CMS.   So once the
Framework is done, they only devote their spare time to the CMS. [In my
opinion, this means Joomla has reached a point where they need to split
into 2 teams, CMS development and Core development..]

By splitting releases/updates into the 2 streams as they are doing, I
think there is a good chance that both will benefit.  It means major
changes to the CMS can now be made without having to wait for the
Framework changes to be ready to be released....and vice versa.

On 6/9/2011 6:16 AM, Helvécio da Silva wrote:
> Great news on version 1.7 Steve!
>
> It sure looks great improvements are under way. I just did't quite
> understand when they say "One of the major goals of Joomla 1.7 was to
> separate the Joomla Platform (...) into it’s own product." What does
> that mean exactly?
>
> The Joomla Team is sure working fast now! :-)
>
> BTW, Joomla Day NYC 2011, happening May 22 and 23? Have I missed it? LOL
>
> Cheers!
>
> 2011/6/8 Stephen Britton <sbritton at gmail.com>:
>
>> Also, Alpha 1 of the long-awaited Joomla 1.7 is now available for download.
>> I haven't had a chance to try it out yet, but I like the news so far.
>> According to the release notes, you will be able to upgrade directly from
>> Joomla 1.6 to Joomla 1.7 through the control panel. It sounds similar to the
>> WordPress upgrade method.
>>
>> http://www.joomla.org/announcements/release-news/5372-joomla-17-alpha-released.html
>>
>> And while I have your attention, I also want to plug Joomla Day NYC 2011,
>> happening May 22 and 23. You can register right now at www.joomladaynyc.com
>> and sponsorships are available.
>>
>> Also, if you haven't visited the newly redesigned JoomlaNYC.org website, you
>> should. Marion of Gothamwebsites.com had done a fantastic job freshening up
>> the site.
>




More information about the Joomla mailing list