We use Plone to manage my animal rights group's website.
Plone comes with a bunch of stuff, and there are lots of add-ons to provide more features, content types, etc. That's nice.
However, if you try to develop something on your own, good luck. AFAICT, there are no Plone API docs, nor any way to determine whether something is provided by Plone or Zope (Plone is just a layer on top of Zope's CMS bits, CMF). Trying to take an existing TAL template and modify it is really hard. I just could not figure out what objects are available in templates, much less the class and API of those objects.
It makes me pine for Bricolage. With Bricolage, you don't get much out of the box and even doing something basic takes a fair bit of setup. But the flip side is that it has pretty decent docs, and since everything in Bricolage is custom, adding new pieces content types or views of content is not particularly hard.
Basically, Bricolage doesn't make anything terribly easy, but nothing is terribly hard either. With Plone, the built-ins make many things easy, but trying to tweak it with code or templates (as opposed to twiddly config settings) is brutal.