Weblog
Plone roadmap
Matt Hamilton during PLOG 2012 on the Plone roadmap and what we want it to contain.
More info about PLOG 2012: http://www.abstract.it/abstract-en/initiative/plone-open-garden-2012/
See the Plone roadmap document on Google docs.
This is a draft document about the future state of Plone. There is not currently a single consensus about what direction Plone is heading in. This document contains for short and long term what the current thinking is about where Plone is headed.
We have the framework team who decides what really goes into a new version of Plone, via PLone Improvement Proposals (PLIP). This is near team. We now have a roadmap team who can have a longer range view, based also on what customers want and what would need to happen for this to work well. This gives a good idea to for example IT departments so they know if a feature is worth waiting a few months for or if it will take a few years for it to land in core Plone.
Plone is not for everybody. What is the ideal size? We used to say it is fine for a single user website and for a multi billion dollar world wide company. That may not be the best message. Plone is typically best suited for medium to large sites. Some metrics from the document:
- Complexity: Plone is usually best suited for sites with multiple content authors working on a single site. For single-author sites, Plone is often considered too complex. Multi-site CMS installations, where content is shared between several distinct websites, can be built with Plone, but is not supported out of the box.
- Duration: Plone projects typically require some ramp-up and initial planning. This means the duration of Plone projects is usually measured in weeks and months, not days. Anecdotal evidence suggests a typical project is 2-6 months long.
- Cost: Costs vary greatly across geographies and organisations, but it is fair to say that most Plone projects involve a meaningful investment of resources (money, staff, time).
Plone has a few differentiators, like these:
- Plone is entirely built by a community, which is fairly unique for CMS platforms that Plone is usually compared with.
- Good security track record. It is easier for us at Netsight to patch one hundred Plone sites than one Wordpress site; and you need to patch Wordpress a lot more often.
- With Plone 4.2 easier theming will come into the core with Diazo.
We used to say at some point that Plone 4 was going to be evolutionary and Plone 5 revolutionary. But people have been wanting to try the new technologies earlier. Still, Plone 5 might break some backwards compatibility. Trickling some of the Plone 5 technologies into Plone 4 already, may make the upgrade easier.
We are using more outside technologies. For example, instead of Kupu (which was maintained by Plone) we now use TinyMCE (which is maintained outside of Plone).
In the medium term, Plone will separate the user interface from the editing interface, using plone.app.cmsui. Plone will use Chameleon as template engine; there might be incompatibility with some add-ons, but core Plone already works fine with it, using its normal zope pagetemplates. Add five.pt to your eggs now and check if your add-ons keep working; fix them when they do not work.
In the long term we will probably get rid of the Zope Management Interface. Plone is the only major user of Zope 2, so let's make Zope 2 (or Zope 4, or whatever it will be called) what we want it to be. We have several own versions of control panels in the Site Setup already of course.
Have a look at the Plone roadmap document yourself: http://bit.ly/roadmapplone. Note that this is still a draft. Add comments! Get your thoughts in sooner, rather than later.
Brain storming Plone features
Brain storming Plone features for the plone.com website
More info about PLOG 2012: http://www.abstract.it/abstract-en/initiative/plone-open-garden-2012/
What features does Plone have?
- web based
- familiar folder structure
- in-site editing, no need to have a preview separated from the back-end editing
- role or group based access control, or nested
- customizable, local workflow
- versioning, check-in/check-out
- ZODB versions: undo
- search: full text and live search
- navigation: orderable items, readable urls
- SEO optimization
- HTML filtering
- Pluggable authentication
- strong commercial eco system
- strong add-on eco system
- flexible theming, skinning, templating; you can theme basically anything; getting easier; also some standard themes now
- commenting
- accessibility; a task force to have a new look at this may be formed
- multilingual; UI (and content with an add-on)
- GPL, open source, no license costs
- Plone Foundation as copyright holder so not a single company; multi-vendor
- works on multiple platforms
- python
- good security track record
- persistent urls that stay valid
- caching support
- clustering (ZEO)
- RelStorage (Oracle, Postgres, MySQL as backend)
- cutting and pasting folders and documents
- WYSIWYG editor
- metadata, Dublin core
- content types
- COPE, multichannel
- mobile ready
- html5 ready
- personal dashboard
- WebDAV, ftp access, XML-RPC
- built-in RSS indication
- any search can be turned into an RSS feed
- collections (document sets)
- tagging, taxonomy
- PDF generation (with add-ons)
- portlets
- customizable layout
- event logs
- buildout
- content rules engine
- mailing system
- blogging
- content management
- image scaling/handling
- inline view for (some) files you upload
- getting faster with each release
- sub sites
- create your own forms (add-on PloneFormGen)
- geo tagging
- document indexing, full text pdf search
- possible external search integration, e.g. SOLR
- documentation
- (community) support
- local user groups and events
- complete application stack
- cross-browser compatibility
- automated tests, continuous testing
- there is an upgrade path to newer versions
- framework team who reviews new ideas for the core
- good release management
- modular packaging
- mature
- you can migrate to Plone from several other platforms, there is a basis for that
- translated into dozens of languages out of the box
- external integration
- community events, conferences, code sprints, Plone Tune-Ups
- code quality
- extensible content types through the web (dexterity)
- turn a folder into a photo gallery
- out of the box product plus platform
- personalization, user profiles, user folder
- contextual search: search within a folder
- ratings, twitter, facebook (with add-ons)
If you are interesting in improving this list, structuring it, contact Matt Hamilton for access to a Google Docs document where we can collaboratively edit it.
Matt Hamilton: plone.com
Talking about writing content for plone.com during the PLOG 2012.
More info about PLOG 2012: http://www.abstract.it/abstract-en/initiative/plone-open-garden-2012/
Goal: multilingual gateway to Plone for decision makers, managers, recommenders, press. Feature list. Mostly not software. Super cached for outstanding performance. Experience should be very user-focused.
Messages: Plone is active, pervasive, actively getting better, open source done right. Focus points: quality, security, testing, ease of use by content managers.
See idealware.org report Comparing Open Source CMSs: WordPress, Joomla, Drupal, and Plone: http://www.netsight.co.uk/blog/open-source-content-management-systems-a-tale-of-two-reports
We have ideas for the basic site structure.
What is of interest to a developer may not be interesting for an end user or decision maker. On plone.org as non-technical user you are lost. We should ask feedback from end users.
When a client of Abstract picked Plone, they still missed something like plone.com to explain to some of the decision makers what Plone actually is, compared to in this case Joomla.
For new developers it would help to have a document explaining Plone for Joomla developers or Wordpress developers, using their terms, their vocabulary, comparing technologies.
Gartner would not investigate Plone, because Plone is not a company.
PLOG social demos
A few demos about social stuff in Plone.
More info about PLOG 2012: http://www.abstract.it/abstract-en/initiative/plone-open-garden-2012/
Guido Stevens: plonesocial demo
This is not yet on PyPI.
- plonesocial.activitystream: portlets and a view to show activities (like object creation) in the site, plus microblog if it is installed
- plonesocial.microblog: post twitter-like updates
- plonesocial.suite: combine this in a bundle that you can add in your buildout.
Matt Hamilton: our approach to social
http://belron.net wanted some social stuff. We installed Intracore, some stuff we usually add to intranets; not yet open source, waiting for some legal stuff and some refactoring. Technically it is separately installed in MySQL for performance reasons.
Not every website needs top performance. So some adapters that allow you to choose a back end that fits your needs would be good.
Blindly adding some social sauce does not work. People need to want to use their intranet of their own free will, otherwise they will just avoid it after a while. It should help them with their tasks. It needs to fulfill business goals.
If Plone is lacking in the social area (or any area) it can be because no one has really needed it so far. But some people may be avoiding Plone because it does not support all this stuff out of the box yet (or with an add-on). It is the same for example for supporting CMIS. But see https://github.com/infrae/collective.cmisbrowser.
Plog Wednesday morning
What are some of the topics in the Plone Open Garden in Sorrento?
More info about PLOG 2012: http://www.abstract.it/abstract-en/initiative/plone-open-garden-2012/
Guido Stevens: a social approach to Plone
No real social networking support in Plone currently. Web 2.0 is less state driven, more event driven. I tried approaching this with ZeroMQ. Downside is that you need to setup extra services outside of Plone. You need to store this somewhere. You need to integrate it within Plone. You can pull it in using a view, but can you search it?
For a client I have built a activity/discussion stream on the front page, which was basically just plone.app.discussion under the hood. You can do similar stuff with favorites/likes. Let's just see how far we come with this low hanging fruit, just using standard content types. For thousands of users this may not scale and you may need to use other solutions outside of Plone, but that is not the initial use case we are after. A plone.social suite.
Matt: we have something similar at NetSight. Danger may be performance: it only starts begin interesting with enough users, but then performance may become a problem.
Fred: make storage flexible, so for small cases you can just annotate the Plone Site root, and for larger cases you use a separate Data.fs
Matt: plone.com
Our main website is http://plone.org. It tries to appeal to developers, decision makers, users, everyone. Last year the Plone Foundation acquired http://plone.com. We want to use this to show people why they should use Plone. It could be just twenty pages of content, translated into various languages. Leading this effort are: me, Mark Corum, Carol Ganz.
Two things to do here:
- A feature list of Plone. The old hands take a lot of things for granted, like the permission system, or being able to drag a folder somewhere else. Also, go through these features and see whether they are interesting for developers or end users.
- Show case sites. Show some good examples that give a good idea of what you can do with Plone.
Maurizio: Case management
A bit of a business buzzword currently. Gathering information about a case (health, jurisdictional, etc), determing what it is. Plone probably has 90 percent of what is needed already out of the box.
Matt: blogs
Make Plone blogging a bit more like Wordpress blogging. Just have a nice overview with a big button 'Add blog post'. Sometimes it is just terminology. Maybe make a product with a skin that turns Plone almost into WordPress. You don't have to patch Plone every week for a new security fix. Usually for our customers of course we already have Plone, so using a blog in Plone means we do not have to add an extra technology stack.
Guido: Plone Innovation Awards
An idea that may be used in the Plone Conference in Arnhem. Have an awards website where you can nominate new technologies or solutions that have surfaces in Plone. Maybe use twitter for voting. Have a ceremony at the conference.
Giampiero: Google Docs
Google Docs is not always an acceptable solution, but sending around Word files edited in Windows and Mac and Linux via email is also not always working; I have seen lots of problems, like not being able to view it anymore. Something like that would be good in Plone. There is some xmpp stuff from Jarn.