19
Simplifying Plone With a chainsaw

Simplifying Plone

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: Simplifying Plone

Simplifying PloneWith a chainsaw

Page 2: Simplifying Plone

Thank you Lennart

Page 3: Simplifying Plone

Zope 2

Page 4: Simplifying Plone

Zope 3

Page 5: Simplifying Plone

Five

Page 6: Simplifying Plone

Plone 4

Page 7: Simplifying Plone

A process

AskCategoris

eEvaluate

Identify

Chop!

Page 8: Simplifying Plone

Guiding lights

Grok

Repoze

Pylons

TurboGears

Page 9: Simplifying Plone

Plone 4

Install

Colours/logoBranding

Content typesBehaviour

Integration

Content & Settings

Templating

Page 10: Simplifying Plone

Things that work well

Installation

Content editing

Collections (mmm.....)

ZODB

Settings

Page 11: Simplifying Plone

CliffsChanging the logo

Branding (“my designer gave me this”)

Content types (“I want to capture this data”)

Deployment

Adapters ?!?

Page 12: Simplifying Plone

Colours/logoNow

Custom folderCSSManagerDIYPloneStyle

Problems

Need to know Plone

TTW/filesystem

cliff

ZMI is scary

Future?

Plone GUI:Front end to customisatio

n registry

Page 13: Simplifying Plone

BrandingNow

Page templateSkin layers

Browser viewsBrowser

resourcesViewletsPortlets

Pain!

ProblemsToo many

ways

No separation between

customisation and

theming

Future?

CSS should be enough

Deliverance (NG?)

plone.maintemplate?

Page 14: Simplifying Plone

Template Customisation

Now

Page templateSkin layers

Browser viewsBrowser

resourcesViewletsPortlets

Pain!

Problems

Z3 vs. portal_skins

Portlets, views viewlets?

3 places: ZCML, Python,

ZPT

Future?

GloWorm

Unified portlets, viewlets, views

Filesystem round-trip

No ZCML

Page 15: Simplifying Plone

Content typesNow

ArchGenXML

Archetypes

plone.app.content

Problems

Need to learn Python

Lots of boilerplate

ArchGenXML product !=

custom product

Future?

Simple schema + view TTW

Filesystem round-trip

No boilerplate!

Specialisation of labour

Page 16: Simplifying Plone

BehaviourNow

Skin layer scripts

Tools

Methods in classes

Adapters

Problems

Knowing where to put

it

Patterns

Zope2 vs Zope3

Future?Adapters!Re-usable

behaviours?

IntrospectionPublished Patterns

... but you shouldn’t need to

do it as much!

Page 17: Simplifying Plone

Non-content management

Now

Archetypes

Custom views

Custom Python

Problems

Performance

Consistency

API fit

Future?Don’t do it in

Plone!

WSGISSO

Indexing

DeliveranceRepoze

Grok

Page 18: Simplifying Plone

Some themesThink about the audience

Find the “one true way”

Remove other ways

Customisation registry

Embrace through the web...

... but allow filesystem round-trip for deployment and collaboration

Page 19: Simplifying Plone

Plone 4

Install

Colours/logoBranding

Content typesBehaviour

Integration

Content & Settings

Templating