Interview with Plone: Back from Comdex
Jan 16, 2004In October O'Reilly Network [ http://www.oreillynet.com/ ] and OSDir [ http://osdir.com/ ] held a contest [ http://www.oreillynet.com/contest/comdex/ ] where our readers could vote from a number of open source projects to send six to Comdex as representatives of the open source community. Surprisingly one of the least known came out on top of the list [ http://www.oreillynet.com/pub/wlg/3957 ] over other popular projects like Eclipse, OpenOffice, KDE and Gnome. At least it was a surprise to us. I've followed up with Alexander Limi and Alan Runyan of the Plone project [ http://plone.org/ ] to find out a bit more about this darkhorse, and why it was so popular.
Limi: Zope [ http://zope.com/ ] was lacking a good-looking, functional piece of UI software - the technology was very good, but no consistent, approachable products existed (IMHO, of course). People were struggling with very basic concepts when they started with Zope, something they shouldn't have to do.
The itch was customer projects that required content management and we were tired of doing the same things over and over again. Classic tale, really.
Runyan: Zope's CMF (Content Management Framework [ http://cmf.zope.org/ ]) was a pretty interesting piece of software, like most Zope software, but it lacked a functional interface. It was made for people to customize, but most opensource developers don't care about looks only about functionality. So we started off making a skin on top of the CMF. Shortly after doing work we realized that we would need to add lots of functionality to CMF because it had many short-comings; after all it is a framework not a product. Basically, Plone and the CMF attempts to address some issues Zope has had for years.
Limi: It provides workflow, Dublin Core metadata, etc.
Runyan: ...How to re-use and customize services.
Limi: ...Component architecture.
Runyan: So, until CMF there was no structure/policy for products to communicate with each other.
OSDir: So, Plone works on top of Zope's CMF and makes Zope easier to work with?
Runyan: Exactly - by providing higher level services to developers. So, we sort of started out making a customization of the CMF - but realized for usability's sake that it lacked quite a few things. Zope was the Wild West of Object Persistence and Publishing before the CMF.
OSDir: Ok, so "content management" (CM) is a pretty loaded, overly used, and vague term. What does it mean when talking about Plone?
Runyan: Great question. I see CM as the process of managing, creating, and lifecycling content throughout a computer system. Managing is composed of tools. One of those tools that's inherent with a Web Content Management System (CMS) is the web interface. This is where Plone started.
Limi: The initial use case that drove Plone was intranet applications - but it quickly extended to web publishing and portal services too. Steve: So, Plone is used by normal people managing web content and by developers to get at the inner workings of Zope and the Zope CMF.
Limi: We do all the boring stuff you hate doing.
OSDir: Lots of folks wondered at seeing Plone in the top twenty choices to vote for and not PHP-Nuke, or Cocoon. Can you comment on that? What differentiates Plone vs some other CMSs other than that Plone works with Zope?
Runyan: Plone has focused a lot of attention towards end-user experience. Cocoon (the last time I looked) was focusing on framework concerns. PHP-Nuke (the last time I looked) was focusing on developer concerns; enabling people to plug-in a few modules together to get a hybrid PHP-Nuke site. Cocoon is too generic and PHP-Nuke is not generic enough for our needs.
Limi: Plone also tries to create a generic web UI (kind of like wxWindows or QT) that makes it easy to generate consistent, usable UI in browser format. Most developers are very happy that we have good UI policies in place, so they don't have to worry about that.
Runyan: Almost all developers (immigrants) we get are Java developers who are wanting a quick path to victory. Plone addresses quite a bit of the concerns that most developers have. When I say Plone I mean Plone and its technology stack (CMF/Zope/Python). Most people don't want to write "yet another registration system". Up until now, we've have very few immigrants from the PHP world, mostly because their goals are very different.
Limi: We're kind of the middle ground, where you want sound design decisions software-wise and not just a collection of scripts - but think Java is a bit too verbose and cumbersome to work with.
Runyan: CMF comes with registration components (and lots of other components) that are easily swapped out (if you need to). And Plone puts the gloss on the components so that people can keep a nice UI on their customizations.
OSDir: So what has happened in the last year to get you where you are with developers and users?
Runyan: Lots of polish and mind share.
Limi: And community building.
OSDir: Community building... interesting... what's the secret sauce?
Limi: Irresponsible sleep patterns.
Runyan: Non-stop work. Enabling people to work with each other.
OSDir: What has Plone been doing that has built "mind-share" and it's community?
Limi: Plone is not really targeted against the "I want to run a weblog" market at all. We've consciously tried to approach and work with businesses and their needs.
OSDir: How are their needs different?
Runyan: Plone is a product. As a product it requires the understanding and ability to peel back layers and understand how each work.
Limi: Plone's focus on tasks and workflow processes is much more present and pervasive than in most other CMSes. It's more about writing killer apps for your specific business than delivering the end-all-solution that probably only solves part of what you're trying to do.
Using workflows to mimic business processes save people a lot of time, and most people are floored by the increased effectiveness and flexibility it gives them.
"We're kind of the middle ground, where you want sound design decisions software-wise and not just a collection of scripts - but think Java is a bit too verbose and cumbersome to work with."
Another interesting point is that we have a strong international focus - that's why Plone is so big in Europe. Having 5-6 languages effortlessly in parallel in your CMS transparently and effortlessly is a huge bonus. Shipping with over 30 supported languages in the standard interface also gets us a lot of attention.
OSDir: Zope is also huge in Europe.
Limi: And my prediction is that it will only become more important in the US over time, as people discover they are being royally screwed over by the big vendors in the CMS space. Especially the businesses in the middle-to-big-sized segment are not getting what they need from the big companies.
OSDir: Has Europe been a big part of Plone's adoption in the last year?
Limi: We've been very focused on internationalization from the outset - it's not something you can easily retrofit into your application afterward, as most US companies painfully discover when they try to conquer the EU markets. Local knowledge and working with a very broad range of developers have enabled us to have very good internationalization in Plone.
Runyan: I think the internationalization has catapulted us.
Limi: Yes, we have a lot of growth in areas with strong culture and multiple languages. Asia is really starting to pick up Plone now too. Japan and China especially.
We also have US Section 508 compliancy which is a big deal for our companies that need to sell solutions to the US government. Plone is the most accessible and standards-compliant CMS out there when it comes to the interface and front-end.
OSDir: So, let's talk about the future... what's in the plan for the coming year for Plone?
Limi: The plans for Plone are to become even more product-oriented and easier to grasp for new users - it's easier than most systems, but it's still too hard in my opinion. That does not mean "dumbing down" the interface, but making it more intuitive and nimble.
Runyan: Through-the-web content type creation. Better versioning.
Limi: Tighter integration between Plone and Subversion is another goal.
Runyan: Writing more unit tests.
"Plone's focus on tasks and workflow processes is much more present and pervasive than in most other CMSes. It's more about writing killer apps for your specific business than delivering the end-all-solution that probably only solves part of what you're trying to do."
Limi: Making plone.org as transparent and creative as possible - and to make it easy to get involved. Not all people dig mailing lists, to put it that way.
Runyan: I think it's also important to understand that communities don't just do work for you. This is a misconception a lot of people have going into open source. You have to keep them involved and engaged all the time.
OSDir: So what kind of insights did being at Comdex give you?
Limi: I had a great time at COMDEX, and would like to thank O'Reilly for giving us the opportunity to be there. It had its ups and downs of course - COMDEX is heavily consumer-oriented, and picking out the people with the power to make decisions is hard. That being said, we met a lot of very interesting businesses there, and it's apparent to me that the US is finally waking up to the potential of open source.
It was an interesting mix - you had Microsoft everywhere, slick presentations and a high degree of professionalism - but I don't think I saw real excitement and people just going "wow" anywhere else than in the open source booths. Explaining open source to the consumers is hard, however. And I don't think that's where the battle is fought anyway, so COMDEX isn't the ideal arena.
OSDir: Plone 2.0 is due this month. What can we expect?
Limi: Everything is very much cleaner and more flexible now. As with any 1.x release, there was a lot of things that were less than ideal - although I'm surprised how well it has held up, considering its age. We are moving towards being even more product-centric, because that's what people who come to us want. Later on they find that the framework is very powerful too, but it's the first 20 minutes with setting up and using Plone that changes people. It Just Works.
"...we have a strong international focus - that's why Plone is so big in Europe. Having 5-6 languages effortlessly in parallel in your CMS transparently and effortlessly is a huge bonus. Shipping with over 30 supported languages in the standard interface also gets us a lot of attention."
There's a lot of new functionality, but singling out particular features isn't easy. My favorites are that it's much faster to add, publish and edit content now. Also the enormous effort that has gone into the UI and accessibility standards compliance. Oh, and of course the new, super-easy way to install add-on products.
It's been in development for almost a year, and Plone as a community has grown incredibly fast in that short time. There's a lot of contributions from new people, and it is a very healthy community. It provides a very good base for the new features that will be added in the future. Plone 2.0 rocks.
Runyan: For developers, there's been a major clean-up of the code in general, and a lot of the code has been refactored. There's the pluggable preferences mechanism for add-on products, much improved groups support, improved form controls (validation etc), a new Unit Testing framework - the list goes on and on. It's just a very much improved release of Plone, in all respects.
Alan Runyan works as the Chief Developer for Runyaga LLC [ http://www.runyaga.com/ ], located in Houston, Texas, and is one of the founders of the Plone Content Management System.
Alexander Limi works as an Interaction Designer and Chief Architect for Plone Solutions [ http://www.plonesolutions.com/ ] in Europe, and is one of the founders of the Plone Content Management System.
Steve (OSDir) Mallett is the Founder and Managing Editor of OSDir.com [ http://osdir.com/ ]. His life can be found here [ http://steve.osdir.com/ ] in one light meaty snack.