ootb presentation

86
OOTB Theming Project Cat-herding for Plone: Organizing and Executing a Successful Remote Sprint

Upload: vedawms

Post on 07-Nov-2014

2.159 views

Category:

Technology


0 download

DESCRIPTION

Slides from the 2008 Plone conference, detailing the process of running the OOTB project and lessons learned.

TRANSCRIPT

Page 1: OOTB Presentation

OOTB Theming Project

Cat-herding for Plone:Organizing and Executing a Successful Remote Sprint

Page 2: OOTB Presentation

• Plone Skinner for ONE/Northwest

• 2 1/2 years of experience in Plone

• I have implemented more than 40+ Plone themes

• Plone skinning training - Naples ’07

• Active in making UI improvements to plone.org, etc.

Veda Williams

Page 3: OOTB Presentation

Plone Strategic Planning Summit

February 2008

• Goal: to produce a plan for the strategic future of Plone

• Result: ~50 “champion topics” chosen and assigned to owners

Page 4: OOTB Presentation

The directive:Ship with more themes OOTB

• Possibly organize theme sprints if/when Deliverance is delivered ;)*

• Suggested champion: Veda Williams

*Smiley face guilt trip from Alexander Limi

Page 5: OOTB Presentation

Cat-herding: What it means to be a champion

• A champion is the person responsible for moving a focus area forward, and reporting progress.

• Being a champion does *not* imply that he/she is going to do the actual work — it's about being the responsible person for that focus area. Of course, there are cases where the champion is in fact the person that implements the solution too.

Page 6: OOTB Presentation

Why Me?Someone apparently thought I knew how to herd cats

Page 7: OOTB Presentation

“The cat needs a job”

And apparently someone thought I had free time on my hands

Page 8: OOTB Presentation

What was the *real* objective here?

•“Shipping” themes with Plone implied additional functionality to be added to the installer

•Deliverance was in a fairly raw state

Page 9: OOTB Presentation

What About Deliverance?People were talking about it like it was the next big thing

Page 10: OOTB Presentation

When in reality, it looked something like this...

Page 11: OOTB Presentation

The real problem in asking me to lead the charge?

Page 12: OOTB Presentation

I had never skinned a 3.0 site.

Page 13: OOTB Presentation

What was really going on out in the theming community?

Page 14: OOTB Presentation

The Theming Story(February 2008)

• Bar to entry: HIGH

• Documentation: LOW or NONEXISTENT

• Number of active themers: UNKNOWN

• Deliverance: SCARY

Page 15: OOTB Presentation
Page 16: OOTB Presentation

The Revised Challenge

• Create more 3.0 themes

• Alleviate the day to day pain for themers

But what did this look like in practice?

Page 17: OOTB Presentation

Generate more themes for 3.0

Page 18: OOTB Presentation

Identify best practices

Page 19: OOTB Presentation

Identify gaps in knowledge

Page 20: OOTB Presentation

Use the collected information to lower the

bar of difficulty

Page 21: OOTB Presentation

Improve the UI on plone.org to make the themes more findable

Page 22: OOTB Presentation

...and ultimately?

Page 23: OOTB Presentation

Figure out how to let skinners sleep peacefully through the night

Page 24: OOTB Presentation

Starting a Rolling Sprint

Page 25: OOTB Presentation

• http://www.openplans.org/projects/ootb-plone-themes/

• Recruiting was understated -- 2 or 3 emails to the plone users or UI lists

• Recruiting was mostly viral

OpenPlans planning site (still open for business)

Page 26: OOTB Presentation

Project Structure• Milestone-based

• Assignment of themes

• QA phase

• Rework

• Deployment on plone.org & pypi

• Scattershot approach

• Throw the project out there and hope people will contribute

Page 27: OOTB Presentation

The Scattershot Approach

World of Warcraft:

“A short range shot that deals 50% weapon damage and disorients the target for 4 seconds.”

Which amounts to something like this...

Page 28: OOTB Presentation

• No one dies.

• Sometimes you hit your target.

Page 29: OOTB Presentation

“Hard” Metrics for Gauging Success

• # of participants

• # of themes

• Email traffic

• Installer improvements

• UI changes to Plone.org

Page 30: OOTB Presentation

Number of Participants• 49 members

• 10 active contributors of themes

• ~25 contributors to the discussion

• New members rolling in every week

• The project took on a life of its own

Page 31: OOTB Presentation

“We even got our own secret handshake”

Page 32: OOTB Presentation

Contribution rate

• 20% contribution level to themes

• 50% contribution level to the discussion

Page 33: OOTB Presentation

Number of Themes

• 66 total Plone themes listed on plone.org as of September 30, 2008

• 10 themes from the OOTB project made available on plone.org

• 5 themes available for download from PyPi or the Collective

• 1 theme used for the new TTW book

Page 34: OOTB Presentation

You do the math.

~25% of the 3.0 themes on Plone.org are from the OOTB project or have been used for Plone training

Page 35: OOTB Presentation

Email Traffic

• 65 unique threads

• 300+ emails exchanged in a 10 month period

Page 36: OOTB Presentation

Email trends

• Marked drop in participation after the first milestone sprint

• Lower response rates to emails

• Feedback from the group at the end?

Page 37: OOTB Presentation
Page 38: OOTB Presentation

Thoughts on Email Exchange

• Initial questions were satisfactorily answered early on through email exchange

• Many of the conversations happening on the OOTB list belonged on the UI list for Plone

• To compensate for not exposing these conversations to the world at large, lessons learned need to get translated back to plone.org/documentation

Page 39: OOTB Presentation

Installer Improvements

• Kudos to Steve McMahon

• As of Plone 3.1.4, all* dependencies are satisfied by simply installing Plone.

• Not sure what the status is of Windows installers.

*almost all

Page 40: OOTB Presentation

UI Changes to Plone.org

• Design revisions have been approved by Alexander Limi

http://www.openplans.org/projects/ootb-plone-themes/round-one

• Plone.org 3.0 migration is not yet complete, but we have a test bed

• Steve McMahon will implement the changes

• Designer of new plone.org UI is working these changes into the new design

Page 41: OOTB Presentation

Knowledge Transfer

Page 42: OOTB Presentation

Key Email Threads

(Future discussions of this nature should be taken into the UI list at large;

OOTB list will be specific to OOTB theming process only.)

Page 43: OOTB Presentation

What’s the best way tooverride a stylesheet?

Page 44: OOTB Presentation

• Paster recipe does this via empty stylesheets

• Initial conversations on the OOTB list indicated that overriding should be done via cssregistry.xml

• Further off-line discussions indicated that using empty stylesheets allows more than one Plone theme to be applied; cssregistry.xml is Zope-wide

Page 45: OOTB Presentation

When and how do we use the browser/ folder?

Page 46: OOTB Presentation

• Most themers supported using the skins directory, and leaving the browser folder images and stylesheets options available “in case” they are ever needed

• OOTB recipe was created by Trey Beck to use only the skins directory for images and stylesheets, but not widely distributed. (I use this.)

Page 47: OOTB Presentation

“My dream would be to have ZopeSkel generate an empty plone product (nested python namespace, with basic zcml and __init__.py only, just like the 'plone' ZopeSkel template), and then to be able to inject the code needed for creating a skin directory (registered with portal_skins), or a zope 3 resource style image declaration, or a zope 3 skin layer, or the base code for a viewlet.”

-- David Convent

Page 48: OOTB Presentation

“... why not to add one more question to theme's generation process like "Generate stylesheets and images as browser resources?". This would let people like me who want to use DTML in stylesheets and store all the theme's mess ;) in skins/ without need of removing browser resources. If people answer [Yes] - we generate the skeleton as it is right now. If we one answers [No] we generate main.css in skins/SUBFOLDER and do not generate browser resources.”

-- Denys Mishunov

Page 49: OOTB Presentation

“This also highlights the urgency (expressed many times already) of unifying the two approaches to visual customisation and scoping out the role of Deliverance in lifting aspects of theming out of this murky world and into something with a much shorter tool chain.”

-- Martin Aspeli

Page 50: OOTB Presentation

Can we integrate the Sub-skins product with

CSS Manager tool?

Page 51: OOTB Presentation

• Reminded us of the frequently requested “subsite” feature

• Highlighted the push towards tool integration (paster + subskins + CSS Manager + gloworm = Deliverance??)

Page 52: OOTB Presentation

What about DTML Support?

Page 53: OOTB Presentation

• Stylesheets generated in a theme product should support DTML by default

• Currently no stylesheets are added to the skins/stylesheets folder, and new users may not know how to use DTML

Page 54: OOTB Presentation

Is it ok to modifymain_template?

Page 55: OOTB Presentation

• Use viewlets if at all possible, but yes, you can still do this.

• I do this, and Limi probably still does. :)

• For the purpose of OOTB themes, keep these changes to a minimum and comment your changes

Page 56: OOTB Presentation

How do we publish a product on plone.org?

Page 57: OOTB Presentation

• Some themes were added to PyPi but never made it back to plone.org

• Highlighted the need to document this on plone.org in the “contribution” section

Page 58: OOTB Presentation

What documentation does an OOTB theme

product need?

Page 59: OOTB Presentation

• Readme.txt / Install.txt need to cover dependencies, how to install

• Install.txt not currently generated by paster recipe, but should be

• Themes by Denys Mishunov contain great examples of what these could look like; also documented on the OOTB site

Page 60: OOTB Presentation

Was OOTB a success?

Page 61: OOTB Presentation

• Creation of 16 themes, or 25% of the existing 3.0 themes on plone.org

• Significant participation and active email exchange

• Installer improvements by SteveM

• Plone.org UI changes coming soon!

• Clarity in terms of next steps

Page 62: OOTB Presentation

Side Effects• Completed theming manual by Anne

Bowtell

• Completed theming chapter with David Convent for the new TTW book

• I accepted nomination to be editor for the theming section of Plone.org/documentation

Page 63: OOTB Presentation

• Energy is finite

• Shorter sprints may work better than a rolling sprint

• Email exchange needs to be exposed to the broader community

• Interest in the project continues

• The champion is not a bystander in the process. :)

General Observations

Page 64: OOTB Presentation

Where are we going from here?

Page 65: OOTB Presentation

• UI improvements to plone.org to highlight themes are forthcoming

• Documentation gaps have been identified and will be assigned

• Deliverance work / tool integration work is happening

• The OOTB project will continue, sans milestones and with more personal initiative

Page 66: OOTB Presentation

New Plone Theming Book(due out in early 2009)

Page 67: OOTB Presentation

Theming Sprint• October 11 & 12

• Varied topics

• Sprinters welcome!

Page 68: OOTB Presentation

Themes Available for Selection on plone.org

“Pick me! Pick me!”

Page 69: OOTB Presentation

Simplicity by David Little, 3.0

Page 70: OOTB Presentation

Nonzero by duffyd

Page 71: OOTB Presentation

Intense Simplicity by pigeonflight

Page 72: OOTB Presentation

Busy City by pigeonflight

Page 73: OOTB Presentation

Lazy Days by pigeonflight

Page 74: OOTB Presentation

Bitter Sweet by Volodomyr Rudnytskyy

Page 75: OOTB Presentation

iCompany theme by Denys Mishunov

Page 76: OOTB Presentation

Hosting theme by Denys Mishunov

Page 77: OOTB Presentation

Andreas01 by Speedbreeze

Page 78: OOTB Presentation

Python by Speedbreeze

Page 79: OOTB Presentation

Relic by Speedbreeze

Page 80: OOTB Presentation

Green Community

Page 81: OOTB Presentation

HedDex Greenfield Theme by Michael Krishtopa

Page 82: OOTB Presentation

Andreas09 by David Convent & Veda Williams

Page 83: OOTB Presentation

CHZenLike by Christoph Handl

Page 84: OOTB Presentation

Hamnavoe by David LLittle

Page 85: OOTB Presentation

Image Credits

• explodingdog.com drawings

• Texas Monthly and Dick Cheney

• Serta Mattresses

• Southern Culture on the Skids

• http://www.monsterevo.co.uk (tumbleweed)

• Tiger Temple Thailand

Page 86: OOTB Presentation

Let’s Celebrate!“I think your cat is drunk.”