Introduction

Plone is a great success. I know very few open source projects with a longer life and a more widespread trend—above all in the web field, where the turnover is high. I have seen so many content management systems (CMSs) rise and fall since Plone was born. And Plone is still here and it seems to me that it will be with us for a very long time.

Besides, Plone is not a toy like many other small CMSs, but competes with the most famous enterprise solutions and overreaches them on many features.

So you might wonder why Plone isn't as widely used as many other well-known technologies. The best answer I can find is that Plone is different. Its approach to development is a far cry from how other frameworks work. This is the force of Plone, since it is what lets us develop in an easy, reliable, and modular way. But the other side of the coin is that it seems difficult for people who know other technologies. They feel less productive and often try to bend Plone to a way of working that is not the best one for it.

So some urban legends are born. The most famous and, in my opinion the most damaging, is that the Plone learning curve is steep. This is not true if you start off with Plone on the right path. On the contrary, learning Plone can be easy and pleasant, because you can get results very fast. Just using the front-end user interface, it is possible to manage content and workflow, create reserved areas to share information, organize the way your content is shown to visitors regardless of where they are created, and so on. Usually this requires no more than a one-day training class for people who have never seen Plone. The next step is to begin to use the back end, where you can change the look and behavior of Plone. And you can do this without programming—you just need to know a minimal amount of HTML and CSS. The last step is to start programming Plone by writing your own modules, which will of course require some knowledge of the Python language.

The important thing to understand is that, to learn Plone, you need to proceed stepwise. Sometimes web developers hear about the great potential of Plone, but do not consider it until they have a big project, so they do not follow the best training path, and deduce that it is hard to learn Plone. In these cases, it is better to rely on an expert who can lead you through the best choices and help you think in the Plone way. Thus, if you want to work with Plone, you must think like a Plonista—then the learning curve will be flat.

The goal of this book is just to help you approach Plone in the right way. We will guide you from the usage of the interface to the programming of new extensions, following the best training path.

After years of experience of training courses, we have identified three steps that lead to mastering Plone, and we have divided this book along these lines. They are the same as I described before: learn how to use Plone as a user, learn how to configure it, and then learn how to develop with it.

Please do not go on until you are familiar with the concepts of the previous parts. This is really important, above all when you are a skilled web developer, because otherwise you'll be tempted to follow poor coding practices. If you have a doubt about the correct way to develop a feature of your application, we recommend that you discuss it in the community, where you will get good advice.

There is only one chapter you might look at before the others: Chapter 12. It is a collection of use cases that can be solved with Plone. It can give you an idea about what you can achieve, and it can motivate you to use Plone as a solution for your own needs. Obviously, it is also important to read it when you have become an expert in Plone development.

The structure of this book can also be useful if you need only the knowledge covered by Parts 1 or 2 of this book. For example, there may not be a need for your customers to become expert Plone developers—they may just need to know how to use your Plone applications (covered in Part 1); or your colleagues may just need to do some simple configurations (covered in Part 2).

Note To ensure that your Definitive Guide to Plone is up to date, please visit http://redomino.com/plonebook. Here, you can find periodic updates, download additional code and practical examples, view errata, ask for support, and provide feedback to the authors. Keep your book vital!

I am very pleased to welcome you to the wonderful world of Plone. I am sure you will enjoy this book, and I await your feedback to improve it for the next editions.

Fabrizio Reale

Cofounder of Redomino

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.189.180.244