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 <[email protected]>: > >> 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. > _______________________________________________ New York PHP SIG: Joomla! Mailing List http://lists.nyphp.org/mailman/listinfo/joomla NYPHPCon 2006 Presentations Online http://www.nyphpcon.com Show Your Participation in New York PHP http://www.nyphp.org/show_participation.php

