Now that you know Plone from the inside out

On Ttwitter there are some fond memories passing by from a lot of Plonista's on previous conferences, sprints, symposia, open gardens etc. etc. With Plone's 15th birthday there are a lot of experiences but also experience and earned wisdom. To prepare for the trainings next week at PloneConf I have a question for everbody who's been using Plone for 'a while'. A little meta thinking excercise actually. Can you dig in your brain & memories and think about:

"What knowledge or insight would have helped you to make more sense of Plone when you started trying to make Plone do what you want".

There's not really a wrong answer here, but besides the plenty "I wished I had known earlier about feature X or option Y" that could have saved you a lot of effort somewhere in the past I'm also looking for some meta "A-ha's."

For example, one of my liberations was the realisation long ago that because we work on top of an object database, there's a considerable isolation feature when you work with Plone, not only as a developer but also as an end user. You can pick up a folder, and drop it somewhere else in your site. And if that folder/object was a Discussion board, it will 'just work' at any other location. Even better: everthing IN that folder of any other type should continue to work as well. the functionality is installed with an add'on for a specific content type, and if your object is of this content type, all will be well and be contained, no matter where it lives in your site. (Yes, we can come up with exceptions where things break, but the this basic attribute of how we workw with objects still hold).

As an end user starting with Plone and prodding around for a while this is something you might not realise until you've been using Plone for quite a while, or started doing some development and read about add'ons, development. Traversal is a connected concept that you don't undersatnd fully until you start tinkering and developping, but knowing the light "lies to children" version as a content editor or webmaster can save you quite some hours of frustration.

So, any takers?

Mine was more technical: At the time I started there was no where else NoSQL (even the term was not invented). So at first ZODB was a pile of magic. Understanding how transactions are working and why stuff was magically stored (just because I added an attribute to some object) was a big eye opener to me.

Without thinking: what i like for a long time is the feature "Standard View" for a Folder. Create a page, collection (formerly Topic) or whatever and add the view to a Folder. Another thing is the great User Control Behaviors opposite some PHP CMS Systems and, of course, ZEO Management.

For me, finally understand what "traversal" really meant opened a door to many possibilities I had never considered. The idea that a URL path could be treated as a path across a graph of objects, and that you could use the left-over bits to find methods, or traverse on to other objects.... It blew my mind.

1 Like
  • Traversal: that there is a mapping between a URL and the object containment structure and ultimately a view or a method call

  • My first year with Plone I struggled to understand how to use it to build an application that would let people log in, create and/or edit some content, and share it with a group. I read about Archetypes but conceptually it did not click for me until quite some time later. Plone is a content-centric system, not a procedural one. Two years later, after a colleague had gone and used PHP to build the application and got bogged down by logic bugs (spaghetti code), I finally understood how I could have used Plone, which would have been a perfect fit.

A solid overview of workflows, permissions, local roles (the sharing menu) and groups for day to day management of content would have been a great kickstart at the beginning.


Thank you all for the feedback so far! These answers confirm some of the topics I had in mind to talk about and also some new ones. :slight_smile: