Three Years with Plone

I’ve been using Plone for about 3 years at both my employer and at sites I’ve setup for other things. I’ve recently started using a number of blogging tools and also Drupal for lightweight websites. People ask me my opinion about why I would pick one vs. another and in general what I think about these tools. In this post I’ll give a quick review of Plone 3 and some practical advice for picking between Plone, Drupal, and WordPress (my current blog technology of choice).

When picking a tool the most important thing is to stop thinking about which tool to use and start thinking about what it is that you really want to do. In “IT land” this is commonly called your “requirements”. Sounds fancy, but it isn’t really. Its common sense, but for some reason most people jump right to technology rather than think about what they want to do. Kind of like picking out a porsche 911 before you think about how your 3 kids and wife will ride along 🙂

People tend to build sites that fall into pretty general categories – thus these tools all have a place:

  • A site to post articles, links, pictures, and limited “page centric” content
  • A site that does all of the above, plus some light applications and widgets where scale is of medium importance.
  • A site that does the previous two, plus sophisticated applications and publishing actions where scale and performance are important.

Now that’s a pretty high-level description, but in general these are the scenarios where I would break out the three tools I mentioned. Blogs fit the first scenario, Drupal fits the second, and Plone fits the third. Of course people will argue to death that I’m nuts and flat wrong on this, but hey – this is my blog not theirs.

Of the three I have found Plone to be the most useful tool, but there are some issues with Plone that prevent a wider use of the tool. I think these are the same issues that will prevent wider use of J2EE and ASP.NET. By this I mean you will not see the penetration of J2EE and ASP.NET into the general public and small business arena the way you do with many of these other tools like WordPress, Drupal, Joomla, etc.. There is really one big reason preventing expanded use of Plone – the memory footprint is too large and this drives the hosting cost way up. That’s it…its5-10x the cost of PHP solutions and most people do not need the sophistication…ditto for J2EE and ASP.NET.

I’ll spend the rest of this post talking about Plone 3. The latest version of Plone was released in the summer of 2007. I started using Plone just before the 2.0 release. Plone 3 has brought things a long way forward. Its got a ton of new features – go check the plone site since I’m not going to focus on all the features.

There are some really nice things in Plone 3:

  • Integrated indexing of MS Office docs
  • Nice AJAX interactive editing touches
  • Improved integration with advanced “zope 3” features
  • Plone Foundation is strong and growing

Working with Plone is pretty easy on Windows or Linux – just grab the installer and run it and you will be ready to get started. Documentation on their website is great and I find their site is very well organized – this means a lot in open-source. To me there is nothing more annoying than a tool with no documentation and no help.

Once you get the base instance installed you can pick and choose some products from the plone site to use. I would definitely bit a bit careful here. Pick products after looking at the support tracker and checking for activity – this will give you a good idea of how active the project is. I would also highly recommend backing things up beofre installing each product. This is an easy procedure – just stop your instance and zip up the entire thing.

Some products I’ve found very useful are Software Center, Quills, PloneGallery, Help Center, Ploneboard. These are all rock solid and I’ve used them a bunch. Poi is good too, although it seems to have some bug, but they will get worked out I think. If you are going to work with Plone you should take the time to learn subversion (svn) too. Most Plone products can be checked out in source code form from an svn repository. Learning how to checkout this code will get you the latest features and fixes, not to mention that you could also learn python, plone, and zope and actually write your own Plone products.

If you decide to try out plone – definitely use the IRC chat room. People are friendly and generally encourage new users so join in. Hopefully this was somewhat useful – although I’m rambling…

Leave a Reply