Geir Bækholt (Jarn): What's new in Plone 4

published Sep 15, 2010, last modified Nov 02, 2010

Talk at Dutch Plone User Day 2010, Euromast, Rotterdam. Geir Bækholt, Director at Jarn and President of the Plone Foundation gives an overview of the current status of Plone and future plans for Plone 4.1 and 5.

Geir Bækholt talks at the Dutch Plone User Day 2010 in the Euromast, Rotterdam.

Plone 4 was released two weeks ago. It has taken longer than we thought, but we think it was worth the wait. It was meant to be a minor release. "Plone 5 is going to have large changes, so let's make this 4.0 release a little one." We totally failed at that. It is the biggest release ever.

To get new functionality into Plone, we use a 'PLIP' process. A PLIP is a PLone Improvement Proposal. The Framework Team accepts or rejects these PLIPs. For Plone 4 we had 58 plips, which is the biggest amount ever. The process was more documented this time, so that probably made it easier for people to get their improvement proposal in. In the end, 27 plips made it into Plone 4.0, some have been postponed.

The release manager of Plone 4 is Eric Steele; works at Penn State University in the USA. He probably had no idea what he stepped up for. ;-)

Okay, so what is new?

Plone 4 is a lot faster. We focused on that. We tested plips for their effect on speed. Hanno Schlichting was the hero here. These are long term improvements, certainly also in the infrastructure. We use Zope 2.12 and python 2.6, which helps reduce memory usage. Plone 4 is about 50 percent faster than Plone 3. Compared to other open source CMSes (all out of the box, without tweaking) we perform very good as well. We are faster than Joomla, Drupal and Wordpress when you look at requests per second.

BLOBs: Binary Large OBjects. Large files are no longer stored in the ZODB (Zope Object DataBase) but in blob storage. This means less memory usage, less database growth, less pushing small objects out of the cache. On one site we saw the memory consumption go from 14 GB to 3 GB.

We got a new visual editor: TinyMCE. Kupu has shipped with Plone since 2005. It has wonderful features and was good at the time. We were happy with it, but it was hard to maintain a visual editor that mostly only we were using. Instead TinyMCE is an existing editor maintained by others. So we just need to take care of integration in Plone, which Rob Gietema of Four Digits has done a lot of work for. It also works on Plone 3. Now it is part of Plone core. Future development will be based on TinyMCE. It has better image upload, table editing, inserting hyperlinks, etcetera. Probably this is the most important user interface improvement in Plone 4.

Plone 4 has a new look. If you have stared at the green and blue boxes for ten years, you will be happy with the new theme. It is a refreshing change. A grid based theme. The old theme has been improved over many years; the new one is younger and smaller, so may be missing some fixes. The old theme is still available, so that should make the upgrade experience of a theme from Plone 3 to 4 much smoother. There is also a basic theme without actual theming, which can work nicely as basis for an own theme.

JQuery Tools is shipped and used. We use it for 'modal dialogs', popup-like dialogs for those times when loading a complete new page makes no sense.

User management has improved. Full names are used everywhere. You can login with email addresses, when you turn that on. Defining your own member data is more flexible. You can assign portlets to groups.

We have full text indexing for Eastern languages. For Western developers that is very hard to do. It makes Plone usable for half a billion people more than before.

When you startup Zope for the first time without a Plone Site, you are much friendlier greeted. We should have done that much sooner. Hanno has done this, probably in half an hour. :-)

It is probably the simplest upgrade of any Plone upgrade ever. It is a big version, do your backups and stuff, but you should be fine, at least when upgrading from any Plone 3 version. Some work is being done do make it possible to export for example a Plone 2.1 site and import it in a fresh Plone 4 site, if you run into problems.

What is next?

Upgrading an add-on package from Plone 3 to Plone 4 is not much work. If you need this for an add-on, just send a friendly email to the maintainer.

Plone 4.0.1 is expected to be released tomorrow, 4.0.2 at the end of September, then each month. Usually I advise to wait for the first bugfix release, but for Plone 4 I don't have the feeling that is necessary; but 4.0.1 is there soon anyway.

Now about the mid-term, 2010-2011. Plone 4.1 probably early next year. Expected: Amberjack guided tours of the user interface, improved commenting, new collections (renaming them did not help, so we did some heavy restructuring to make them lighter), SiteAdmin role (basically Manager without ZMI access), password policies.

Plone 4.2: we don't know how far away this is. Chameleon template engine for faster rendering (probably about 20% speed improvement), architecture preparation for Deco, content governance (which person is responsible for maintaining it, is it still up to date), batch editing.

Plone 4.3 may not even happen, we may be close enough to Plone 5 by that time.

Somewhere on the horizon is the magical Plone 5. It will improve the user interface for editing and put us at the front of the pack there, using Deco and tiles, unified content types, new editing interface.

Remark from the room: it would be good to get a performance comparison between Sharepoint 2010 en Plone 4.

Note: if you are Dutch you may want to go to the Dutch version of my weblog to see some extra entries (at time of writing only one, but there will be more) in Dutch about this user day.