I've been putting together a "10 Things that make Plone a good choice for the enterprise" factsheet, and have come up with the following talking points. Many of these echo the excellent ones that Ken already posted in his email.
1) Security Since Plone is built on top of Zope and Zope uses a security model similar to Unix, the security and permissioning can be very granular. Since Zope uses the ZODB, you don't have to worry about SQL injection exploits. One can cite that the Royal Bank of Scotland, FBI, CIA and NASA are using Plone, and Plone is on the list of approved and secure platforms for use at NASA. There are the CVE graphs from the IBM report comparing Plone security track record to other CMSes and frameworks. http://www-935.ibm.com/services/us/iss/xforce/midyearreport/xforce-midyear-report-2008.pdf The "Hardening Plone" howto on Plone.org is an excellent document about how to lock down Plone even more for highly secure environments. http://plone.org/documentation/how-to/securing-plone And the accompanying talk from the recent Plone conference which was a use case of a high-security Plone solution, which was audited and approved for handling sensitive data from a multi-billion industry. http://www.slideshare.net/khink/hardening-plone-a-militarystrength-cms Zope is very secure http://zope2.zope.org/about-zope-2/six-reasons-for-using-zope/zope-is-secure 2) Scalability At the recent Plone conference, we heard case studies about sites that have millions of page views per day and hundreds/thousands of users logging into the site. I'd like to collect these case studies (perhaps on plone.net?), so when potential customers ask for real data, we can produce reports that show Plone can scale. Since it's built on top of Zope, Plone has built-in load distribution using ZEO (Zope Enterprise Objects) http://zope2.zope.org/about-zope-2/six-reasons-for-using-zope/zope-is-highly-scalable With Plone 4, we get plone.app.blob which stores large files on the file system. Even Sharepoint can't do this OOTB without an expensive add-on product. Plone has built-in caching and with CacheFu, we can send purge requests to an upstream caching proxy such as Squid or Varnish. Load tests can be written easily with Funkload to test before and after performance optimizations using collective.funkbot. http://pypi.python.org/pypi/collective.funkbot With RelStorage, you can use Plone with any RDBMS including MySQL, PostgreSQL and Oracle and take advantage of these database clustering and redundancy capabilities. See Shane Hathaway's recent blog post about performance improvements when using RelStorage. http://shane.willowrise.com/archives/relstorage-1-4-0b1-and-zodbshootout/ 3) Interoperability Since it's written in Python, Plone can talk to just about any backend system, from relational databases to authentication services to web services, and can be integrated with 3rd party search engines. The Salesforce.com integration is the best of any open source tool available today. David Glick from GroundWire gave a good overview at the PloneConf. http://www.slideshare.net/davisagli/integrating-plone-with-ecommerce-and-relationship-management-a-case-study-in-plone-getpaid-and-salesforcecom Because Plone ships with PlonePAS - pluggable authentication service, it can authenticate users against Active Directory, LDAP, OpenID, SQL or even Gmail. Plone's built-in search tool can be easily replaced with the open source Solr search tool which provides faceted search and enterprise level search capabilities. Andi Zeidler gave a lightning talk at the PloneConf about how easy it is to integrate. http://plone.org/products/collective.solr Massimo from RedTurtle gave a talk at the European Plone Symposium about integrating Google Apps / Google Docs with Plone http://www.slideshare.net/massimo.azzolini/googledocs-on-plone Sally Kleinfeldt from Jazkarta organized a panel discussion about Plone and web services at the PloneConf and has also blogged about it. http://blog.jazkarta.com/2009/08/07/plone-web-services-things-are-looking-up/ http://blog.jazkarta.com/2009/10/27/plone-web-services-what-about-cmis/ 4) Data portability Moving your Plone database to another provider is usually just a matter of copying the Data.fs file and tar up the eggs/products directory. Makes it very easy to switch to a different hosting provider / vendor if you're not satisfied with your current one. Besides using the web services APIs mentioned above to get data in and out of Plone, one can also leverage ContentMirror, which will serialize and replicate all the content in Plone into a relational database asynchronously. See Kapil's talk about it at last year's Plone Symposium. http://docs.google.com/present/view?id=dntgmzf_17547q5j3wq enpraxis.static site is an add-on for Plone that lets you easily create a static HTML snapshot of your entire Plone site. http://pypi.python.org/pypi/enpraxis.staticsite Also, using new tools such as Transmogrifier and Funnelweb (which builds on top of Transmogrifier) it's even easier to get data in and out of Plone. See Lennart's talk from the PloneConf about Transmogriier. http://www.slideshare.net/regebro/transmogrifier-migrating-to-plone-with-less-pain-2387600 And the project page for Funnelweb, which gives you a TTW interface for importing static sites into Plone. http://www.coactivate.org/projects/funnelweb/project-home 5) Accessibility Plone is the most accessible open source CMS available on the market. Conforms to Section 508 which is a requirement for all government agencies and W3C accessibility guidelines. The functionality gracefully degrades on older browsers, or when using a screenreader. http://plone.org/products/plone/features/3.0/existing-features/accessibility-compliant/ and http://plone.org/accessibility-info An all-too-often forgotten aspect when people construct web sites is how accessible these sites are to the blind and sight/motor-impaired. Plone was probably the first CMS out there that focused on accessibility. With the ruling that web sites can be sued for not providing access to the blind, things have changed for government and corporations who provide information to the public through their websites. http://www.infoworld.com/d/security-central/target-sued-over-web-access-blind-917 Aaron VanDerlip from Jazkarta gave a talk about Plone and accessibility at the PloneConf 2006 http://plone.org/events/conferences/seattle-2006/presentations/plone-and-accessibility 6) Internationalization and multilingual content Plone already supports over 50 languages out-of-the-box and with Python 2.6 excellent handling of Unicode, we can support multibyte languages as well such as Chinese, and even right-to-left (RTL) languages such as Arabic and Hebrew. Using the LinguaPlone add-on you can translate the content of your Plone site into any language, and even export the content in standard XLIFF format for hand-off to a professional translation agency. after they've done the translations, they send back XLIFF files which can then be imported into Plone. See Sasha's presentation on this from the PloneConf. http://www.slideshare.net/valentineweb/manage-multilingual-sites There was a lightning talk at the Plone conference about an in-place translation tool that made it possible to translate the message strings in the Plone interface just by clicking on them, and then this could be exported to a .po file. 7) Theming and branding Plone already has excellent separation of presentation and content, and almost any element in the Plone interface can be styled using only CSS. With Deliverance, we have an even easier theming story, and the possibility to theme multiple applications using the same static HTML/CSS design. Now any design can be made to work with Plone with minimal effort - simply add some rules to the Deliverance rules file to wire up content generated by Plone into placeholders in the theme. See my presentation from the Plone symposium (conference slides to be posted shortly) http://www.slideshare.net/Jazkarta/deliverance-plone-theming-without-the-learning-curve-from-plone-symposium-east-2009 8) Hosting Plone can be hosted on any platform including Linux, BSD, Windows or Mac OSX. Basically any platform that can run Python will work. Plone can be hosted on a VPS, a dedicated server or virtual machines on Amazon EC2 or using Ubuntu's Enterprise Cloud. http://www.ubuntu.com/cloud/private Using GenericSetup, it's very easy to capture site configuration settings, and programatically replicate the site on a different instance. Using buildout it's very easy to make repeatable deployments so that you can easily replicate a development environment, push it to staging and finally production. See Tarek's excellent presentation on this subject: http://www.slideshare.net/tarek.ziade/delivering-applications-with-zcbuildout-and-a-distributed-model-plone-conference-2008-presentation A new development by Dylan Jay is collective.hostout which is a series of buildout recipes for defining your hosting settings directly in the buildout configuration file. http://www.slideshare.net/djay/collectivehostout-how-to-host-a-python-app-for-20-in-20min We've also started working on an Amazon AMI, VMWare and VirtualBox images of Plone to make it even easier to evaluate and get Plone hosted on a server quickly and using best practices. 9) Open source Similar to Linux, Apache, Firefox and many other popular software tools, Plone is open source. Open source is a methodology to programming that puts great emphasis on community development. Rather than one firm or organization building a particular product, an open source project can be built by a variety of individuals or companies. We like open source because it helps us stop trying to reinvent the wheel and instead choose the best of breed systems for our clients and deliver them at an affordable price. Plone has won 3 years in a row the Best Other CMS Award from Packt Publishing http://plone.org/news/plone-wins-packt-2009-cms-award Martin Aspeli wrote about Plone: a model of a mature open source product for his MSc dissertation for Analysis, Design and Management of Information Systems course at the London School of Economics. http://martinaspeli.net/publications/Plone%20-%20A%20Model%20of%20a%20Mature%20Open%20Source%20Project.pdf 10) Foundation backed international community With over 300 vendors in 50 countries, and Plone being used by governments and universities all over the world, Plone is truly an international movement. With a non-profit foundation owning the trademark and copyrights, Plone is protected and it's governance is in good hands. http://plone.org/foundation The Plone community has an annual conference in a different city every year with regional symposia in Europe, N. America and S. America also taking place every year. The most recent conference attracted 400 attendees from 30 countries. http://ploneconf2009.org In additional to the usual issue tracking systems, Plone also has a user feedback service to collect suggestions form the users of the software. these suggestions are reviewed by members of the core Plone development team and considered for future versions of Plone. http://plone.org/news/plone-launches-user-feedback-system There is also a formal process to get a new feature considered for inclusion in the Plone core, a paid release manager and a clear roadmap for what future versions of Plone will bring. http://plone.org/documentation/manual/plone-developer-reference/overview/release-process http://dev.plone.org/plone/roadmap This is still very much in a draft state but I would love any feedback on the points, and I plan to write some blog posts about each point to go into further details. thanks, Nate On Mon, Nov 23, 2009 at 9:51 AM, Scott Paley <sc...@abstractedge.com> wrote: > Steve - this is fantastic. Thanks! > > Next Wednesday (12/2) I'll be sitting on a panel at Gilbane Boston entitled > "Open Source CMS Powwow", as the "Plone representative". Others on the panel > will include Mitch Pirtle, the founder of Joomla, Jay Batson, a co-founder > of Acquia, and Ian Howells, the CMO of Alfresco. In other words, it's a > pretty strong panel (always fun to be the "weakest link!") Obviously I know > a lot more about Plone than the other 3 platforms, so this kind of > information is extremely helpful. It's interesting to see how Drupal > stuggles with many of the same challenges as Plone and is not some "magic > bullet". > > http://gilbaneboston.com/conference_program.html#W9 > > If anybody out there wants to "arm" me with additional information about > what you perceive to be the strengths of Plone relative to the other > platforms, please send an email my way. I'm not as interested in the > specific ways in which Plone is better than Joomla as I am about where Plone > really shines. I have my own ideas on this, but would love feedback. > > The stated agenda of the talk is, "Just a few short years ago many > organizations wouldn't think of implementing an open source content > management system. Today, thousands of major global companies have > implemented solutions like Drupal, Joomla!, Plone and Alfresco, to name a > few. In this session, Joe Bachana, Founder and CEO of DPCI, has invited > major luminaries from these four open source CMS projects to help attendees > better differentiate each system from the others. Particular attention will > be paid to calling out the strengths of each system. The session will also > pay close attention to any feedback or lingering criticism in the market > that open source CMS platforms still face." > > The moderator followed up privately to let the panelists know that, "With > regard to the tone of the session, I'd like it to be constructive -- I don't > have a particular interest in declaiming which project is better than the > other. However, there are clear differentiators on platforms (LAMP, Python, > Java/J2EE) as well as functional focus for each that can and should be > called out, and we should endeavor to do so. Further, I would like to leave > ample time to discuss the criticisms of the open-source platform and > communities, since there is still a great deal of it out there." > > Thanks all, > > Scott Paley > Abstract Edge > > On Sun, Nov 22, 2009 at 12:59 PM, Steve McMahon <st...@dcn.org> wrote: >> >> While at the Non-Profit SW Dev Summit, I had the opportunity to attend a >> couple of Drupal panels (new to Drupal, and what's new with Drupal). Drupal >> had their A team at the summit (a couple of core devs and several >> evangelists) to do the talks. I wanted to pass on a few things on what I >> observed. Share as appropriate. >> >> 1) Drupal is also having the framework vs product debate. From what I >> heard, the "framework" side is definitely winning. Many Drupal integrators >> are actually demanding that some new, friendlier UI in the Drupal 7 preview >> be rolled back because they feel it undermines their flexibility as >> integrators. Drupal 7 continues to be a micro-core product that is not >> really suitable for use out of the box. The Drupal folks emphasize that no >> inexperienced person should think they can integrate Drupal by themselves >> (for more than a blog), as they need to gain a lot of experience as to which >> modules really work together. >> >> 2) There is no migration path for add-on modules between 6 and 7. The core >> devs emphasize that it will be a rare 6 module that does not need a complete >> rewrite to become a 7 module. The integrators in the audience moaned loudly >> on receiving this news, and complained that this was awful for them. The >> core devs replied that the new APIs would make add on modules more secure >> and reliable. >> >> 3) Drupal is still very complex for end users. I don't think they really >> differentiate between users and site managers. Positioning a node in the >> content hierarchy still requires intimate knowledge of how Drupal works (or >> add on modules that organize portions of the tree). The ideal Drupal install >> is probably either small enough that a single site admin is not a >> bottleneck, or large enough that several site admins can be well trained. >> >> 4) Permissions and roles are still pretty much global, and workflow is >> rudimentary. No ACLs. The organic groups module remedies some of that, but >> there was skepticism about whether or not it could be ported to 7. >> >> 5) The CCK (content creation kit) is now pretty much integrated into 7, >> and is really pretty cool in its ability to allow site admins to add fields >> to content types TTW. On the other hand, they don't have a round trip story, >> and I heard a couple of conversations, that translated to Plone-speak, >> amounted to "we need something like generic setup to handle repeatable >> deployments." >> >> 6) Real-life Drupal is actually very resource intensive. The audience was >> told that they could do something like a blog on a cheapo host, but that a >> real deployment with multiple content authors would require a dedicated >> server or large virtual slice. >> >> 7) They are still, out-of-the-box, a great blogging platform, and if >> you're using Drupal as a "news to the home page site" with a few static >> pages, it's easy and fast to configure. >> >> 8) The party line on Acquia is that what's good for Acquia and Dries is >> good for Drupal. I saw not a hint of discomfort with that. >> >> 9) A somewhat contradictory pair of party lines: "it's easy to find PHP >> programmers, and they're inexpensive, therefore PHP is the place to be" and >> "Don't even think of using a PHP programmer with less than 3 years Drupal >> experience to do any customization." >> >> 10) Taxonomy was "never meant to provide site structure" and is now >> deprecated as a way to build nav trees. The "right" way to do it is with the >> new relations fields, which allow you to pick nodes as parents/children. >> >> >> >> >> >> _______________________________________________ >> Evangelism mailing list >> Evangelism@lists.plone.org >> http://lists.plone.org/mailman/listinfo/evangelism >> > > > > -- > Scott Paley | ABSTRACT EDGE > > Office: 212.352.9311 > Direct: 212.352.1470 > Fax: 212.352.9498 > > Website: http://www.abstractedge.com > Blog: http://www.brandinteractivism.com > > _______________________________________________ > Evangelism mailing list > Evangelism@lists.plone.org > http://lists.plone.org/mailman/listinfo/evangelism > > -- Nate Aune - na...@jazkarta.com http://www.jazkarta.com http://card.ly/natea +1 (617) 517-4953 _______________________________________________ Evangelism mailing list Evangelism@lists.plone.org http://lists.plone.org/mailman/listinfo/evangelism