Slashdot is powered by your submissions, so send in your scoop

 



Forgot your password?
typodupeerror
Check out the new SourceForge HTML5 internet speed test! No Flash necessary and runs on all devices. ×

Learning Joomla! Extension Development 92

Michael J. Ross writes "One of the most powerful and popular content management systems (CMSs) is Joomla, a superior derivative of Mambo. Out of the box, Joomla makes it relatively easy to build Web sites that allow collaborative editing of content, attractive styling via prebuilt templates, and many more features. A Joomla-based site can be further improved by adding custom modules, components, and other extensions to the CMS, without any modification to the core Joomla code. A resource that explains how to do this, is Learning Joomla! 1.5 Extension Development: Creating Modules, Components, and Plugins with PHP, by Joseph L. LeBlanc." Read on for the rest of Michael's review.
Learning Joomla! 1.5 Extension Development
author Joseph L. LeBlanc
pages 176
publisher Packt Publishing
rating 8
reviewer Michael J. Ross
ISBN 1847191304
summary A practical tutorial for creating Joomla! 1.5 extensions


The book is put out by Packt Publishing, under the ISBNs 1847191304 and 978-1-847191-30-4. The publisher maintains a page on their site dedicated to the book, where visitors can read summaries of the chapters and the overall book, order the e-book version (in PDF format) at a discount, download the book's sample source code, read and submit errata and feedback, and download a sample chapter, namely, "Chapter 1: Joomla! Extension Development: An Overview" (also in PDF format). Note that, as of this writing, the errata and feedback do not have their own links, but are located on the page accessible via the link "Code download," which should be clarified.

The book's title page bills it as "A practical tutorial for creating your first Joomla! 1.5 extensions with PHP," and that is exactly what the book is. Rather than organizing the information in a cookbook style — which is quite popular in programming books nowadays — this particular one uses a narrative approach, in which the author illustrates the concepts by stepping the reader through an example project. He begins with a clean install of Joomla, without any of the sample data, and shows how to "build extensions to create, find, promote, and cross-link restaurant reviews."

The nine chapters of the book are organized in a logical manner, and in the order that the typical developer would go about extending a Joomla-based site: overview; Joomla's component structure and registration; backend and front-end development; module development; using the model-view-controller design pattern (MVC); creating plug-ins; adding configurability for the extensions that you have created; packaging the extension elements for use by other Joomla developers.

In explaining the key concepts and procedures for building custom extensions to a Joomla site, the author takes a methodical approach, with a healthy balance between exposition, sample code, and illustrative figures. The chapters read quickly, and the code changes from one section to the next are helpfully bolded. The chapter summaries, as with most programming books, add no value, and could be beneficially dropped, thereby saving space.

The author states in the first chapter that there are three types of extensions within Joomla: components, modules, and plug-ins. This could be confusing to anyone who has read the articles that help introduce Joomla to the new developer, and are contained in the sample data found in Joomla version 1.5. Those articles include one titled "Extensions," which lists two additional extension types — templates and languages — not considered such by LeBlanc. However, that article does not make clear as to why templates and languages should even be considered extensions, which seems counterintuitive at first glance.

The presentation of all of the material in LeBlanc's book is not perfect, but it is certainly more than adequate. It is unfortunate that the book does not have a lay-flat binding, which tends to be more of a problem with slender volumes such as this one (176 pages), since much thicker books have more weight to keep both sides down on the table at the same time when the book is open. All of the screenshots have a bit too much pixelation, which makes the smallest text within the screenshots more difficult to read. However, none of that text is unreadable. The book's text outside of the screenshots is quite easy to read, with a generously-sized font and a logical layout of each page's material. Almost every page has two horizontal lines, one at the top, and one at the bottom; they serve no purpose, and could be eliminated to save ink and space, as could the brackets around every page number. The same is true for the much larger and thicker brackets used to delineate warnings, notes, tips, and tricks. There were a few other very minor flaws in the book. For instance, in the information about the reviewer, "MySQL" is misspelled. In the Table of Contents, the "Available Toolbar Buttons" line appears to be one font size too small, and thus inconsistent with the other subsection heads. All of these weaknesses are of little consequence and could be fixed in the next edition.

Even if a reader initially had no interest in developing their own extensions to Joomla, this book could easily spark their interest, given that the book shows just how powerful those extensions can be, as well as how doable they are, by any competent programmer familiar with PHP and MySQL. In fact, even if the reader were to later decide that they had no interest in creating any extensions, they could still benefit from the book's discussion of how components are structured within Joomla — a more clear explanation than anything I have seen in the official Joomla documentation. Joomla may be an excellent CMS, but the documentation quality does not come close to the value of Joomla itself. That is why there is such a great need for books such as this one.

Although Learning Joomla! 1.5 Extension Development: Creating Modules, Components, and Plugins with PHP has some weaknesses — as do most if not all technical books nowadays — for any developer interested in getting the most out of Joomla by building custom extensions, LeBlanc's contribution should prove especially informative and useful.

Michael J. Ross is a Web developer, freelance writer, and the editor of PristinePlanet.com's free newsletter.


You can purchase Learning Joomla! 1.5 Extension Development from amazon.com. Slashdot welcomes readers' book reviews -- to see your own review here, read the book review guidelines, then visit the submission page.
This discussion has been archived. No new comments can be posted.

Learning Joomla! Extension Development

Comments Filter:
  • by Anonymous Coward on Wednesday August 15, 2007 @02:18PM (#20240201)
    should be punishable by death.
  • How does it compare with Drupal or PHP-Nuke? Never found all that many differences between the PHP based CMS's (Can you say SQL injection?), and the best java ones aren't open source.
    • by Dekortage ( 697532 ) on Wednesday August 15, 2007 @02:35PM (#20240431) Homepage

      I've used Typo3, Joomla, and Drupal. I would say that Joomla is the easiest to set up and use, but it also less customizable (although it seems to have more e-commerce plugins than some of the others). If it does what you need it to, Joomla is great. I haven't used PHP-Nuke in years but my impression is that (again) Joomla is superior in ease of use and inferior in flexibility.

      The CMS Matrix [cmsmatrix.org] has a summary of features (which can be compared against other CMS systems in its list).

      • Re: (Score:3, Informative)

        by klenwell ( 960296 )
        Joomla's admin controls definitely look slick, but I quickly noticed the inflexibility, too. Also, its lack of support for granular privileges was one of the things that turned me off of it. I think there's an extension, but I prefer Drupal's built-in support.

        Thanks for the link to the CMS Matrix site. I'd been looking for something like this.
      • Re: (Score:3, Informative)

        http://www.opensourcecms.com/ [opensourcecms.com] has live demos for around 50 CMS plus blog, e-commerce, forums, etc.

        I was going to play around with Joomla! and SMF, but the bridge had been discontinued.

        For those who wonder why we have had to come to such a decision, we have had input from both the Joomla! project and the FSF directly, and it is the stance of both Joomla! and the FSF that the use of a bridge into a GPL-licensed system constitutes the creation of a combined work. This forced us to reconsider our development of

      • by tyrione ( 134248 )
        Holy sh*t that CMS Matrix site is an abortion on UI design.
    • Re: (Score:2, Informative)

      by bertboerland ( 31938 )
      Maybe you ought to *REALLY* checkout Drupal. It has nothing to do with the *nukes( and is a very solid and clean content management framework used by many high end companies around the world).

    • Re: (Score:3, Informative)

      by yuda ( 704374 )
      I've used all three 'nuke, drupal and joomla. We started migrating sites from nuke 3 or 4 years back as we found nuke was lax on security issues and one site in particular was hacked 3 or 4 times in as many months. Personally I'm not such a great fan of Drupal, the majority of drupal sites have a very generic feel and tends to take a lot of extra work to get something that looks nice (especially if you're wanting a forum) in saying that it's a pretty solid cms, easily customisable and we didn't run into the
      • by rk ( 6314 )

        I'm a pretty big fan of Drupal myself (the only thing I've got against it is I don't care for PHP much), but I've got to agree with you that the Drupal forum module, while basically functional, is really ugly.

        I like SMF [simplemachines.org] for a forum app, and there is a pretty good SMF bridge Drupal module [vgb.org.ru] that handles user synchronization between the two, and gives you few nifty blocks for showing recent posts and other SMF information in Drupal sidebars. It's worked pretty well for me in a couple projects.

        • by yuda ( 704374 )
          Yeah I really like SMF as a forum app. Personally it's more intuitive to admin and seems as easy for jo public to use as say PHPBB. I can't say I've played around with the SMF Drupal bridge module - the last time I looked at it, the module was very buggy and hard to use. It's good to hear they've ironed they issues out.

          I've switched a couple of forums from PHPBB to SMF and haven't had many complaints from people using the site apart from the "it doesn't look like phpbb" type of complaint
    • by Just Some Guy ( 3352 ) <kirk+slashdot@strauser.com> on Wednesday August 15, 2007 @04:19PM (#20241643) Homepage Journal

      How does it compare with Drupal or PHP-Nuke?

      I haven't used Joomla!, but I'm absolutely in love with Drupal. It's very easy to administer (if you're at least a little tech-savvy) and has modules available for just about anything [drupal.org] you might ask of it.

      For example, at my personal site [honeypot.net], I have a personalized home page [honeypot.net] with all the content I would normally have on iGoogle or My Yahoo!. If you were actually logged in as me, that page would also have my stock quotes and weather information.

      I liked it well enough to convert most sites I host to it (and it has great support for virtual hosting) because I found that I was spending more time managing the management system than the content in my old setups, where Drupal just gets out of the way and makes it easy maintain. Again, I love it.

      Oh, and there are plenty of nice themes floating around. I really don't like the ones that come with it any more than some of the other posts, but it's easy enough to drop in another.

    • I checked out Drupal and Mambo/Joomla for a large site I setup and went with Drupal. Joomla's URL aliasing setup was awful compared to Drupal. It makes sense since Mambo (on which Joomla is based) originally only supported it as a commercial add-on created by one of its core developers. With Drupal, friendly URLs were built in from the beginning.

      Basically, Joomla is easier to setup and add modules... but nowhere near as customizable or as extensible as Drupal. If you don't mind doing a little bit more l
  • by Pojut ( 1027544 ) on Wednesday August 15, 2007 @02:27PM (#20240315) Homepage
    What the fuck people. Feisty Fawn? Joomla? why is it that the geekier you have to be to use something, the more it sounds like it was named by someone sipping on meth/mescaline/LSD cocktails?
    • by LWATCDR ( 28044 )
      Yea Longhorn, Vista, Silverlight, Oracle, Excel, Access, SAP, and Delphi are so much more descriptive and less geeky.
      • by Pojut ( 1027544 )
        Never said that they were...I just didn't feel like listing more than two examples:-)
      • Well if we are talking about product names...
        Longhorn is a codename.
        SAP and Oracle are company names, and products inherit from that.
        Access makes sense. Think about it.
        Vista, Silverlight, Excel, Delphi - OK maybe you have a point. Vista conjures up certain thoughts and feelings (or it is supposed to). Not sure about silverlight or Delphi (but wasn't there an oracle at the last one? :P). Excel? Well maybe people who use it, excel at what they do :P
        • Re: (Score:3, Interesting)

          by Otter ( 3800 )
          Excel? Well maybe people who use it, excel at what they do :P

          "Excel" is a pun on "cell", as in a spreadsheet cell.

          I'd used to think it was a clever name, but given that it invariably comes up in these "Why does every open-source project have such a stupid name?" "Oh yeah, what does 'Excel' have to do with spreadsheets?" arguments, the pun seems to be lost on pretty much everyone.

          That said, one doesn't have insist that software be named something like "Content Management System" to agree that "Joomla!" is a

        • Re: (Score:3, Interesting)

          by gobbo ( 567674 )

          Well if we are talking about product names...
          Longhorn is a codename.

          Point of trivia: the Longhorn Saloon and Grill is the name of the bar that used to be (or still is, haven't worked there in 18 years) at the base of Whistler [wikipedia.org] and Blackcomb [wikipedia.org]. The bar is right between the two mountains, so it's a pretty good pun... though it implies that Vista was conceived and coded under the influence.

          Anyway, give me goofy names like drupal or dabbledb over iNames like iWork, iLife, iLose, Pages, Numbers, etc. (non-troll disclaimer: iUse all of the above).

          • It's still there, I was definitely inebriated at TELUS yelling at Rahzel from their outside seating this April. It's a great spot to find, visit the Village before the 2010 games blow everything wide open.
        • SAP and Oracle are company names, and products inherit from that.

          Sort of: the company that originally produced the Oracle RDBMS was named "Software Development Laboratories", and then "Relational Software", before ultimately renaming itself after its flagship product.
        • by LWATCDR ( 28044 )
          Longhorn may be a codename but Microsoft used it in public a lot. To me a codename should only be used internally.

          "SAP and Oracle are company names, and products inherit from that." Actually Oracle was the product name the company changed it's name to that of it's flagship product. It is a Greek mythology reference so I put that high up on the geek scale.

          Access is just annoying since it is the second Microsoft product to use that name. The first was a terminal emulator.
          And yes there was an Oracle at Delphi.
      • Well, if you insist...

        -> Silverlight
        That's a very visual name so to speak, inspiring thoughts of majesty and beuty, isn't silverlight a visually oriented tech? ./sarcasm --on
        -> Oracle
        Hmm, getting information. Nope, don't see what that has to do with oracles...

        -> Access
        Data accession, and access... Nope, don't see a pater there either

        -> SAP
        That's an acronym:
        SAP [wikipedia.org]

        SAP was founded in 1972 as Systemanalyse und Programmentwicklung by five former IBM engineers in Mannheim, Baden-Württemberg (Dietma

        • by LWATCDR ( 28044 )
          "-> Silverlight
          That's a very visual name so to speak, inspiring thoughts of majesty and beuty, isn't silverlight a visually oriented tech? "
          Please it sounds like an super hero. "Hey Sliverlight you and Yellowjacket go cover the bank while Dr. Magic and I take care of the super tanker."

          "-> Oracle
          Hmm, getting information. Nope, don't see what that has to do with oracles..."
          Greek mytholgy reference? Yea that isn't geeky.

          "-> Access
          Data accession, and access... Nope, don't see a pater there either".
          Yea
          • pardon, I never claimed they weren't geeky, I just claimed they weren't nonsensical, and did in fact imply what the product was about.
    • Criticism about Joomla's name makes sense, but criticism about Feisty doesn't really...Most projects have a distinctive name that is wildly different from the actual market name. Here you might see someone talking about "Feisty Fawn" (Ubuntu 7.4) or "Longhorn" (Windows Vista) or "Moonshine" (Fedora 7) but you won't see any of those products marketed by anything other than their actual brand name.
      • Here you might see someone talking about "Feisty Fawn" (Ubuntu 7.4) or "Longhorn" (Windows Vista) or "Moonshine" (Fedora 7) but you won't see any of those products marketed by anything other than their actual brand name.

        Are "Ubuntu" and "Vista" and "Fedora" any better?
    • Re:OK, seriously. (Score:4, Informative)

      by colin_s_guthrie ( 929758 ) on Wednesday August 15, 2007 @02:39PM (#20240485) Homepage
      IIRC the name "Joomla" roughly means "community" in I think Swahili. This was chosen at the point when Joomla forked from Mambo due to issues over the formation of a for-profit foundation to commercialise Mambo. The main developers thought that this was diverging away from community feel of the project and so the name they gave to the fork reflected this sentiment: that they really care about the community.

      As for the exclamation mark, well I have no idea!
    • Re: (Score:2, Funny)

      by garnetlion ( 786722 )
      Please, real geeks write their own CMS from their GUI-less Slack or Debian box.
    • by ceeam ( 39911 )
      What would _you_ call them?
      • by Pojut ( 1027544 )
        Something like FORTRAN or COBOL...you know, a name that is an acronym that describes exactly what the hell it does.
        • Re: (Score:3, Insightful)

          by KingSkippus ( 799657 ) *

          Aw, come on, do you have a dog? If so, what did you name him (or her)? "Dog?"

          I feel sorry for your kids.

          "Hi there, little girl, what's your name?"

          "Daughter."

          If you owned an automobile company, we'd be driving Cars that come in imaginative models like the Red Car and the Gray Car.

          Point is, hardly anything is simply given a descriptive name of what it is. It's boooring. These days in the age of "Cingular" and "Accenture" [rpi.edu], it's the rare exception that they are. Good or bad, it's the way it is.

          • by Pojut ( 1027544 )
            In the words of George Carlin,

            "Hi, we're the JOHNSONS....WHAT'S HIS NAME?"

            "Ball sniffer."
    • Informative titles are one of the most basic usability principles. Any programmer who can't grasp something this basic is probably going to have a lot of other usability issues with their software.

      Case in point, we have a product named "Joomla". The Joomla administration has links to sections ambigously titled "Modules" and "Components". What's the difference between the two? Don't they refer to the same thing? And "mambots"--need I say more?
      • Yeah, hear hear. I used Joomla for a bit, and components, modules, and mambots don't make any sense, nor does the name have anything to do with their function. Freaking annoying as hell. Stupid geeks, they're usually so exact when it comes to naming things. Why are these programmers such idiots when it comes to creating a meaningful and consise name?
    • u gotta remember, these are teenagers who haven't grown up and think sci fi series like stargate sg1 are well acted and well scripted.
       
    • I tried using Mambo before and it was so difficult to customize. You have to be specially trained to understand the framework. I hope this new thing is different. It's not that I don't appreciate a free and useful tool... it's just that when they expect you to learn a whole new language to do anything with it that isn't out-of-the-box is when I get peeved. Then you either have to pay for expensive training (with cash or time or both) or hire someone at crazy rates who already has the specialized knowledge
  • >Out of the box, Joomla makes it relatively easy to build Web sites that allow collaborative editing of content, attractive styling via prebuilt templates, and many more features.

    I.E.

    Makes it relatively easy to put together a website that allows lots of attackers to inject their data into the system, exploiting vulnerabilities you are completely unaware of, embedded in the guts of a multi megabyte codebase you downloaded and threw into cgi-bin.
    • Second (upto fiftyfiving) that. I run tons of Joomla sites, and most of them are unproblematic. As soon as the hackers gets started, though, things start to get seriously smelly. One of my sites gets SQL injected at least once a day. I did everything google, joomla.org and other resources told me about patching Joomla, but I still get 'em. I don't regret switching to Ruby on Rails.
      • by kuzb ( 724081 )
        I take it you've never gone through the changelog for Ruby on Rails either. They have their share of security flaws.
        • Who hasn't? I'd dare to say you're less likely to get SQL injections on a Rails app than on a Joomla installation, though. Rails is also pretty young. Perhaps it'd be equally common for rails app to get injected if you saw Rails apps as often as you saw Joomla installations, though. And, of course, a not-so-advanced rails developer might think that this - SomeModel.find(:all, :conditions => "foo = #{params[:bar]}") - is a good idea, and screw every effort the Rails framework made to prevent injections.

    • by jafiwam ( 310805 )
      Haha.

      I came in here to post similar snark, however parent did it way better than I ever could.

      I get approached by "developers" wanting to put Joomla on my server periodically.

      I always tell them "until the fundamental security flaws of PHP and CMS in general are fixed, that crap is not getting put on a web server I am responsible for running".

      All those technologies just hide the security responsibilities, or shove them off on some poor server admin when the "developer" in question is too ignorant to deal wit
      • I always tell them "until the fundamental security flaws of PHP and CMS in general are fixed, that crap is not getting put on a web server I am responsible for running".

        Which security flaws are these?
        • by jafiwam ( 310805 )
          There was a Slashdot article about one of the PHP core developer guys quitting in disgust (paraphrased) due to the lack of concern for keeping it secured. When the people that wrote the stuff in the first place say it's insecure, it's insecure as far as I am concerned.

          Search "PHP security" for several sites that lay it out in detail, including the "Month of PHP bugs blog". Same with Joomla, people wondering about the lack of easy security in the product are not hard to find.

          Joomla! version list had "criti
      • by ooh456 ( 122890 )
        "I always tell them "until the fundamental security flaws of PHP and CMS in general are fixed, that crap is not getting put on a web server I am responsible for running."

        Wow, I would so not hire you to run my web servers ;) Neither would Yahoo, Flickr, Digg, or about 10 million other companies using php and/or CMS. How do you find work? Displaying static html pages for Amish people?
    • Drupal (Score:3, Informative)

      For What It's Worth, I've never used Joomla, but I do have a few Drupal sites. Druapl definitely takes the security of the platform seriously, and they fix up vulnerabilities quickly.

      Over the security mailing list, I haven't seen an SQL injection attack in as long a I can remember. Lately, it's all been XSS. Anyhow, they're good about getting the word out to Drupal admins whenever anything is discovered in Drupal core or contributed modules.

      Joomla probably has something similar, but I don't know about su
    • cgi-bin? hmm, not too familiar with php, are we?
      • Re: (Score:3, Informative)

        >cgi-bin? hmm, not too familiar with php, are we?

        Yes, I've done my share of PHP. It can go in cgi-bin as much as it can go anywhere else.

        If computer security is your profession (as it is mine) then you might be aware that a not uncommon technique is to configure the web server to disallow the execution of any code, including PHP, outside of a specific place such as cgi-bin. Thus reducing the attackable footprint.

  • by Anonymous Coward on Wednesday August 15, 2007 @02:35PM (#20240437)


    CMS is part of VM/370 AKA VM/CMS

    PLEASE DO NOT use this term for your crummy microcomputer "products".

    TIA.

    • by cygtoad ( 619016 )
      CMS also stands for Centers for Medicare and Medicade Services. If you are going to complain about the use of Acronyms by others, you are going to be one frustrated individual.
      • by mcho ( 878145 )

        Lord Baltimore someone else has heard of Centers for Medicare and Medicaid Services (CMS)! NPI! :)

    • Why not just post a reply that says, "Hi, I am old and retired and have anger issues." Would be essentially the same thing.
  • There were a few other very minor flaws in the book. For instance, in the information about the reviewer, "MySQL" is misspelled. In the Table of Contents, the "Available Toolbar Buttons" line appears to be one font size too small, and thus inconsistent with the other subsection heads. All of these weaknesses are of little consequence and could be fixed in the next edition.

    These are problems, but jeez -- why mention them in a book review? And he left out whether or not the colors in the logo were 100% ac

  • by Anonymous Coward on Wednesday August 15, 2007 @02:41PM (#20240527)

    One of the most powerful and popular content management systems (CMSs) is Joomla, a superior derivative of Mambo.

    I mean, it's great that the reviewer has found their soulmate and everything, but I'm having a hard time expecting much in the way of objectivity from this review...

    • by Von Rex ( 114907 )
      I! take! products! much! more! seriously! when! they! abuse! exclamation! marks!
    • Take, for example, the impending release of Joomla 2.0 which is based on MVC architecture and will not only completely negate the value of this book, but will also likely (if it is in keeping with the Mambo developers' release history) completely invalidate any and all current components/extensions requiring everyone start from the ground, up. Again.
  • The chapter summaries, as with most programming books, add no value, and could be beneficially dropped, thereby saving space.

    Your review could be beneficially dropped, thereby saving space.

    I'm the guy who writes those chapter summaries, you insensitive clod!

  • by PCM2 ( 4486 ) on Wednesday August 15, 2007 @02:52PM (#20240651) Homepage

    Even if a reader initially had no interest in developing their own extensions to Joomla, this book could easily spark their interest, given that the book shows just how powerful those extensions can be

    Oh, completely. I started writing i18n add-ons for Zope and Plone the same way. I was on the BART train, heading to Oakland to catch an A's game, and I wanted something to read, so I looked under the seat and the Zope book was there. I had absolutely no interest in Python-based content management systems -- seriously, I didn't even have a Web site -- but I scraped the gum off the front cover and started reading anyway, and after a few stops I was hooked. I ended up taking the book into the Coliseum with me and had my first ZPT code written before the 4th inning.

    • by fishdan ( 569872 ) on Wednesday August 15, 2007 @03:05PM (#20240795) Homepage Journal
      Right! I had a similar thing happen to me! I was on my way to JavaOne, also taking BART, when I started reading about the BALCO scandal. I had absolutely no interest in baseball -- I had never even played little league, but I started reading and after a few stops I was hooked. I ended up going to the A's game that afternoon, and by the 4th inning, they brought me in as middle relief.
      • A meme is born.
      • Also, right! Similar thing happened to me; I was on the BART and started reading this thread on my PDA. I had absolutely no interest in replying, I rarely reply to /. threads in the first place. But after a few threads I was hooked. I ended up losing my job because I spent to much time trying to come up with funny replies and in a few weeks, CmdrTaco showed up and offered me a moderator job.

        Reminds me of that scene in "Blazing Saddles" in the town meeting where everyone agrees with the preceeding spe
  • "One of the most powerful and popular content management systems (CMSs) is Joomla, a superior derivative of Mambo
    If its so popular, why have I never heard of it, and why do you need to explain what it is?
    • Joomla! 1.0 was exactly the same as Mambo (just look at the code and you'll see). On the other hand, Joomla! 1.5 has been completely rewritten from the ground up. It's coding styles and structure remind me a lot of Java for some reason... must be the whole JClass naming convention. However, they have adapted the MVC pattern to every aspect of the CMS now that it has made creating components and modules (with the new structure) quite more complex. The nice part of it though is that you can separate the
  • fatally flawed (Score:3, Insightful)

    by ceejayoz ( 567949 ) <cj@ceejayoz.com> on Wednesday August 15, 2007 @05:09PM (#20242153) Homepage Journal
    Any content management system that needs to replace wholesale the main content capability to be able to categorise content in more than one category (or more than two levels of categorisation) is fatally flawed. I was assigned to a project in Joomla and within a week was begging (successfully) to use anything else - WordPress, Drupal, anything.

    Very happy with Drupal now. The default install is bare-bones, by design, but you can duplicate all the Joomla functionality with a few of the modules on drupal.org and you're up and running, without the absurd restrictions, underpowered plugin hooks (something like nine in 1.x?) and godawful ugly outputted code.
  • ...is this just advertising on slashdot? Is this *really* news?
  • Spring, Struts, Ruby on Rails, AJAX, JavaServer Faces and on and on. I'm starting to feel framework fatigue. Yet another book, on yet another framework. Before you've even mastered the current frameworks, there's another one. Sorry, I'm suffering from framework fatigue.

Congratulations! You are the one-millionth user to log into our system. If there's anything special we can do for you, anything at all, don't hesitate to ask!

Working...