Conference Session

Collective.transmogrifier: Plone migrations and more!

By: Martijn Pieters

About Martijn Pieters

Experienced Zope and Plone developer, 9 years and counting! I worked at Zope Corp back in the heady days of the Portal Toolkit and helped build the CMF as well as doing deep plumbing of Zope itself. I now help make Plone the best platform there is at Jarn.

About the session

Migrating foreign data into a new Plone site is a challenge. Usually lots of things have to happen before you can import your client's old content into their new shiny site. Encoding/decoding, cleanup of HTML, type and path determination, file transformations and more all have to be applied. For the customer this may be a one-off challenge, but for integrators this happens time and time again, but each migration is slightly different again from the last.

To help make migrations easier, we came up with collective.transmogrifier, a pipeline processor that lets you deal with data one entry at a time, to apply all the different transformations (transmogrifications) in a controlled fashion. The pipeline is constructed using a configuration file very much like a zc.buildout or a paster configuration, and using re-usable components. Need to convert titles from latin-1 to unicode: Use a codec section. Need to set a default view on a folder? Use the browserdefault blueprint. However, collective.transmogrifier can do more than just importing legacy data. It is also a generic pipeline constructor, so exports and Plone-to-Plone migrations are just as easy. It doesn't stop there of course, any data transformation process can be modelled with transmogrifier. Knock yourself out!

I'll include a case study of a current project where we migrated 20+ GB in legacy data (over 125k content objects) from an Oracle database into Plone, all with one transmogrifier configuration file and a small set of custom sections.

This is a Talk (45 min)

KSS Techniques

By: Joel Burton

About Joel Burton

Joel Burton is the trainer for Plone Bootcamps. He is: an acknowledged expert in teaching Plone and Zope, and has thousands of delighted students from both public and private courses. a founding member of the Plone Foundation, three-time board member, and two-time Chair of its board of directors. a skilled Plone developer and designer, responsible for some of the largest and most sophisticated Plone sites in the world. a frequent presenter on these topics at conferences. He has spoken at International Plone Conference (2004, 2005, 2006) O'Reilly Open Source Conference (2003, 2004, 2005) O'Reilly European Open Source Conference (2005) PyCon (2003, 2004) EuroPython (2004, 2005) Plone North American Symposium (2005 and 2006) Vancouver Python Conference (2004 and 2006) the founder of the Washington, DC Plone user group, and a founding member of the San Francisco Plone user group.

About the session

• Why KSS? • Client-side convenience • Server-side power • Quick reference guide

This is a Talk (45 min)