Date post: | 08-May-2015 |
Category: |
Technology |
Upload: | matt-hamilton |
View: | 2,537 times |
Download: | 0 times |
BathCamp CMS Smackdown!
Matt HamiltonPresident, Plone Foundation
5 Things I Love about Plone
Love #1
The Community
Love #2
Buildout
Deployment, versioning, build, etc
[buildout]extensions = mr.developerparts = productdistros instance zopepy
# Change the number here to change the version of Plone being usedextends = http://dist.plone.org/release/4.2b2/versions.cfgversions = versionssources = sources
# Add additional egg download sources here. dist.plone.org contains archives# of Plone packages.find-links = http://dist.plone.org/release/4.2b2 http://dist.plone.org/thirdparty
# Add additional eggs hereeggs = PIL collective.cookiecontrol
# Reference any eggs you are developing here, one per line# e.g.: develop = src/my.packagedevelop = src/collective.cookiecontrol
Love #3
The ZODB
ZODB
• Released in late 90’s -- yeah we’ve been doing NoSQL since before your CMS was a glint in your creators eye
• Transparent object persistence
• Full ACID-compatible transaction support
• Pluggable storages
ZODB
myobject.foo = ‘bar’
Love #4
Diazo
Theme any site (not even just Plone) without touching it. Really.
The next bit was a live demo, I’ve captured a few screenshots for this version of the presentation on
Slideshare
<rules xmlns="http://namespaces.plone.org/diazo" xmlns:css="http://namespaces.plone.org/diazo/css" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<theme href="http://bathcamp.org/" />
<replace css:theme-children="#content" css:content-children="#content" />
</rules>
rules.xml
<rules xmlns="http://namespaces.plone.org/diazo" xmlns:css="http://namespaces.plone.org/diazo/css" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<theme href="http://bathcamp.org/" />
<replace css:theme-children="#content" css:content-children="#content" />
<replace css:theme-children="#em_widget-4" css:content-children="#portletwrapper-706c6f6\e652e7269676874636f6c756d6e0a636f6e746578740a2f506c6f6e650a6576656e7473" />
</rules>
rules2.xml
Love #5
Python
Python
"When����������� ������������������ I����������� ������������������ used����������� ������������������ to����������� ������������������ program����������� ������������������ in����������� ������������������ Java����������� ������������������ I����������� ������������������ used����������� ������������������ to����������� ������������������ first����������� ������������������ think����������� ������������������ how����������� ������������������ to����������� ������������������ solve����������� ������������������ the����������� ������������������ problem,����������� ������������������ then����������� ������������������ I����������� ������������������ had����������� ������������������ to����������� ������������������ think����������� ������������������ how����������� ������������������ to����������� ������������������ code����������� ������������������ that����������� ������������������ in����������� ������������������ Java.����������� ������������������
With����������� ������������������ Python����������� ������������������ I����������� ������������������ think����������� ������������������ how����������� ������������������ to����������� ������������������ solve����������� ������������������ the����������� ������������������ problem,����������� ������������������ then����������� ������������������ just����������� ������������������ write����������� ������������������ it"
Matt Sital-Singh, Netsight Developer
5 Things I Hate about Plone
Hate #1
Legacy Code
Legacy Code
• When you’ve been around over a decade, you accumulate a lot of code. The world moves on
• Major refactoring going on Zope 4 = -20% code
Legacy Code
Hate #2
Old Documentation
Hate #3
Everything in the Catalog
Everything in Catalog
• Seemed a good idea at the time
• Solr etc didn’t exist back then
Hate #4
Quality & Evolution not obvious
Hate #5
Democratic nature can mean slow fruition of ideas
Democratic
• No one company
• Means you don’t get lead down one route
• Means consensus can take a while