Response to Andy McKay

Andy McKay responded to my post on his own blog, something I appreciate because much of what he said is right in line with where my head is at right now. I’m finding myself moving away from recommending Plone to clients, even in a situation where Plone’s features are exactly what they need.

A large number of competent and happy integrators is key to Plone, without them it will wither at either end as it slips into the domain of more and more technical obscurity know only to a few. They are one of the key bridges between the techies and customers.

Andy, I’d say this comment is spot on:

Donna (and please correct me here if I’m wrong) runs a small consultancy producing web sites for customers. She doesn’t have a huge army of technical programmers behind her. She focuses on finding a solution for a client mostly using existing tools that can be customised to her user. At the Planning sprint we she was placed in a category called “integrators”.

A year ago (before we had our summit in February) I started whining about the changes to the theming process (got into a discussion between core developers and integrators who deal with clients on a day-to-day basis). When I left the summit I felt a bit better (though I pretty much got p0wned -as my kids call it – by a 14 year old theming wizard)

Now, over 9 months later I’ve created a dozen skins (or so) in Plone 3. I’m much more comfortable in the command line and I know my way around a virtualenv (and love it) Still can’t code python to save my life, but I can create a skin and deploy it!

Here is where I worry? I’m the exception (not the rule) as are Veda and Matthew Wilkes and Rob Porter and Denis (spliter). We’ve put in extra time and because of our connection to the community are willing to deal with the pain just to get really good at theming Plone sites. For some of us, we work for companies that deploy Plone sites, for others we work at a company that has a Plone site or sites that need maintaining. As I mentioned in my post after Linux World, Plone is not as well-known as it should be after nearly 10 years in existence (2011 will be 10 years).  Hopefully World Plone Day will help and the Evangelism team, led by Nate is lighting a fire under our collective behinds to get the word out about Plone.

It’s difficult really, trying to “please all of the people all of the time”, but that is not what we are looking at here. Trust me, as a mom who has raised six human beings with entirely different personalities I know that there has to be some sacrifice made by someone. We can’t all have what we want, all the time.

At the same time, as a professional who has daily interaction with a wide range of “customer” types from the mom&pop shop to the client with 500+ employees looking to streamline business processes online I’m getting to the point where I’m second guessing my recommendation to use Plone. It’s not fair to the client to pay way more than they should in development time because the “easiest” aspect of site creation  has crept into the programming side. We say that Plone separates content, programming and design. It has taken many of us years to get where we are and as new designers/integrators approach Plone with an eye on it’s features they are bug-eyed and shaking by the time we explain exactly what it takes to skin a Plone site. I witnessed that today as Veda tried to explain to a newcomer just what it would take to skin their newly loaded Plone site.

That said, what can we do as a community to fix this? In IRC today, Rob mentioned that Joel has created a sweet little “through-the-web” paster form. Love it, where was that when I was learning how to create themes with ZopeSkel?! A move in the right direction. Someone in channel(catherine-w) brought up a great point , ‘if you are new to Plone you won’t understand what this means’. So we need to stop “assuming” that because we understand it that  new adopters of Plone will understand at the same level we do. We need to continue to look at ways we can make adoption a much more positive experience! We have a terrific helpful community (Joanna, Veda, Darci, Alex, MatthewWilkes, et al) and Plone’s core feature-set is unrivalled (I’ve been doing a lot of testing/experimenting with various cms’s – ModX and WebGui being the most recent) so let’s keep this move towards improving the integrators experience moving towards the most user-friendly cms, it’s already the most featureful!

(cue six-million-dollar-man theme – doo doo doo doo)

Plone CMS
A cms clinging to life
People, we can enhance it
We have the technology
We have the capability to build the world’s friendliest cms
Plone will be that toolkit (product?)
We can make Plone even better than it was before
Better. Stronger. Faster

And on that note I shall go eat spaghetti that I cooked for the family. Lots of garlic and onion *exhale*

The anti-sprint (Plone 3.1 testing event March 14-16)

We won’t be writing code or submitting fixes… we will be the ones finding the bugs!

Join us on Friday March 14 to Sunday March 16th and contribute to the Plone community without having to buy a Plone ticket (Plane, I meant Plane).

As I mentioned last month as “champion” for integrator liaisons I’ve committed to leading/coordinating/organizing a monthly gathering at #plone-integrators on the IRC freenode server.

This month is special, this month we have the priviledge of testing the Plone 3.1 release and providing our hard-working developers with the feedback they need to catch those pesky little bugs and squash them til they are good and dead.

This Friday March 14th we’ll gather in #plone-integrators and begin “Real-World” testing of migration to this newer version (with a whole lot of fixes). We are also looking for feedback on fresh installations. How does editing work for you? content rules? Issues with setting up workflow?

Show up on Friday with a site you need (or want) to migrate or just download Plone 3.1 and put this new release to the test.

An example of an issue that needs to be tested: Reports that NuPlone in 3.1 is crashing IE6 & IE7

Installers (for those of us just not ready to handle buildout yet) will be available in the next couple of days (you are welcome to download and test prior to Friday of course).

Come armed with a positive attitude and real desire to help improve Plone.

The event will be open all weekend (I’ll be there as much as possible. I’m participating in the doc sprint at Penn State -remotely) so pop in when you have a little while to participate.

IF you haven’t already please join our Open Plans project for integrators.

http://www.openplans.org/projects/ploneintegrators

Oh and hey, if you don’t have Martin’s book (Professional Plone Development).. let me know in PM when you get to the event. Two lucky type people will get a copy donated by C Squared Enterprises (I’ll announce here on Monday who gets the book..they’ll be picked randomly from those who  stay at least one hour and participate AND don’t have his book yet :-)) Even if you aren’t a programmer/developer you can still give the book to someone who is.. 🙂

Come and go according to your schedule.. but please do join us! We can use all the feedback you all can spare!

Improving the Integrator Story

Some thoughts after today’s Plone Integrators session.

If I could “design” the integrators experience with Plone this is what it would look like:

A new version of Plone has been released (Production). This version isn’t as focused on backwards compatibility as it is with making sure that all legacy sites can be migrated to the new version painlessly.

The production version is NOT released without quality documentation for integrators (not just for developers). The integrator should be able to download Plone 4.0 and then go to /documentation at plone.org and find any documents he needs to get started (hence the “Start Here” pointers). He won’t be confused by old documents for previous versions as he’ll be able to find documents for the current version at the top of the stack. (the manuals for both Plone 2.5 and 3.0 are awesome.. but they are for end users/content managers.. not integrators and I think our biggest issue here is that those who fall in the middle.. struggle the most with Plone.. and they are the ones “selling” Plone to end-users.. promoting adoption..etc)

The integrator is tasked with creating a new skin for Plone so he hires his favorite designer to create a static photoshop mockup (client loves it) and then it’s converted to html/css.   Integrator uses Deliverance to “import” the html/css and the design is complete (and of course is gorgeous in every browser including Konqueror). Integrator has been asked to create a new content type based on “news item”. Integrator goes to Plone control panel and clicks on “create new content type” .. is asked “what would you like to base your new content type on?” Integrator selects “news item” and fills out a simple form to add a couple new fields (much like PloneFormGen) including any required validation.. Integrator pushes a button and a new content type is added and is “selectable” from add item drop down.

All TTW customization is automatically “saved” to the filesystem so it can be moved or replicated without issue.

The integrator doesn’t know what’s going on behind the scenes.. it should be seamless.

I know this is a tall order and maybe at this point we don’t have the man/womanpower to meet all these requirements, or do we? Granted we have quite a few “champions” out there now.. garnering support for each of their “causes” but again..it’s the same vocal type people (including me). What can we do to encourage more participation? How can we make sure we have all the appropriate documentation when a production version of Plone is released? How can we break down these barriers to entry? You tell us..

Plone Integrators (irc) session wrap-up

So, as I’ve mentioned I was tasked (at the Plone Summit) with creating an “Integrators” group or at least harnessing (uh maybe harnessing isn’t the right word, coaxing, cajoling, asking nicely?) a few integrators to act as liaisons and keep the integrators up-to-date on changes that will affect them in some way shape or form. Part of that is getting integrators involved in testing of upcoming releases especially as it relates to migration.

Today, a dozen of us met in irc and started a discussion that was both enlightening and uplifting. It’s always a positive experience when other human beings who are going through the same issues you are validate your challenges. (aka, you are not alone, brother – or sister).

I’d like to take this opportunity to encapsulate what was discussed, although I invite you to make your own determination by reading our log from the chat which is available at the OpenPlans project for Plone Integrators

Please be warned, I’m not an IRC nerd so I didn’t catch (log) the first 10 minutes or so of this initial chat (thank you shurik for logging the chat for me.. I figured out how to do it from here on out..but I appreciate you jumping in and taking that on).

Attendees: aclark (Alex Clark), jonstahl (Jon Stahl), SteveM (Steve McMahon), unclelarry (Larry Pitcher), shurik (Aleksander Vladimirsky),  plonepaul (Paul Everitt) , MattBowen (Matt Bowen), latrippi (Laura Trippi), davisagli (David Glick), gkirk (Gerry Kirk), witsch (A. Zeidler), Mech422 (Stephen Hindle), esteele (Eric Steele)
(If I missed you please let me know – I’ll edit this post)

So what happened in our session? A little OT discussion here and there.. and of course a little silliness (most of us have met each other in person) but there were a few valid points brought up that I’d like to highlight in this entry.

One of the first things I asked was: “What is your definition of an integrator?”

jonstahl: people who build Plone sites for clients (internal or external), but are not involved in development of the Plone core.

MattBowen|work:  A person who primarily customizes Plone by using existing products and well-defined methods (e.g., skinning)

(some discussion ensued as to who is included in the integrator space)

jonstahl: i think there might be a good argument for defining “add on product developer” as slightly outside of integrator-space.  i like the idea of targeting people who build sites by doing visual themeing, using existing products, and maybe, just maybe, modifying them a bit.

(more discussion about who these integrators are…)

MattBowen|work: My “no coding product installer” wants a bunch of products and some nice themes, to be able to switch the logo and configure things through the plone, and could be coaxed into the ZMI with detailed instructions

So we decided to start a spreadsheet (at gkirk’s suggestion..thanks for “volunteering” :-P) to start brainstorming on the “types” of integrators.. no specifics..just.. roles primarily. Some ideas were added and then we got sidetracked in the chat.

I asked how we can involve the integrators without offending the core developers who work so hard on development:

Zope Layers

plonepaul: i think if we can take ownership on incepting this layer, the one that lennart put at the top, then it frees lower layers to be as geeky as they wanna be 🙂

Other topics that came out of this discussion:

Portlets in Plone 3 are harder than they should be..why can’t we make it easier than it is to keep using our Plone 2.5 portlets?

Mech422: if we got ambitious – we could develop a ‘standard’ test suite for a group of packages (build scripts, selenium tests, etc) that _any_ integrator could deploy easily to help out

Mech422: Automated feedback tool, contacts a repository of bugs with a report after tests run, should be able to disable/enable (like what firefox does if it crashes)

There was also discussion about a reporting tool for Plone. We may be able to convince Mech422 to champion creation of this tool that’ll allow reporting in the future (might take a couple more sessions :-)).

Overall there were a lot of common topics (that we’ve seen in blog posts recently) that don’t really need to be rehashed here.. but the theme was.. we all really like working with Plone..but how do we reduce the barrier to entry for integrators.  One thing I noticed in particular was the lack of participation from anyone not a part of the usual irc crowd.. So how do we entice new integrators to participate in shaping the “ttw” layer or providing quality input on “real-life” migration issues?

Thank you everyone who attended today. I look forward to seeing you at the next session in March!

In my next entry I’ll add my own thoughts about improving the integrator story.

Plone Integrators meet in IRC

On February 22, 2008 a dedicated irc chat room for Plone Integrators has been set up.

The purpose of this (now) once a month gathering is to keep the lines of communication open and improve the overall integrator story for Plone.

Join us today at #plone-integrators on the freenode server

Next gathering will be  March 22nd.

In the meantime join our OpenPlans project…
(we have a Plone 3.1 release on the horizon and integrator testing is vital part of pre-release activities.. If you haven’t emailed your interest in participating in finding bugs in migration etc..please email me donnamsnow@gmail.com)

http://www.openplans.org/projects/ploneintegrators