"Count what is countable. Measure what is measureable. What is not measureable, make measureable." -- Galileo

Thursday, November 27, 2008

Practical Plone Preorders

I was looking at Jon Stahl's recently uploaded slide deck for non-profits and noticed his plug for Practical Plone 3. That jogged my memory and I went back to YouTube and tracked down Jon's "Online Social Networks: Can They Power Social Change?" video, a one-hour collection of lightning talks.

Sure enough, presentation #4 was Alex Steffen's and he tells a tale of marketing his organization's book. The video is a little rough and it takes awhile to get to the fourth talk, so I've extracted the audio channel for those who like immediate gratification.

The gist of the matter is that Amazon's algorithm for sales rank includes all pre-orders as part of the first day's total sales. That means a significant number of pre-orders can elevate a book very, very high on the lists. Alex used social networking to organize a pre-order campaign and the result was that the book rolled out with an Amazon sales rank of 500 followed soon after by 38,000(!) copies being ordered.

Of course, this means we should run right over to Amazon and pre-order Practical Plone 3. The only problem is, the book is not yet available on Amazon. We're left with pre-ordering directly from the Publisher, our good friends at Packt.

I'm not sure how Packt-published books make it into Amazon's system, but it seems like a good idea to follow Steffen's example and pile up the pre-orders on Amazon as soon as its available. I'd appreciate hearing from someone closer to the publishing process regarding the feasibility of this strategy and when/if we might see pre-ordering available on Amazon for the new edition of Practical Plone.

Sunday, November 23, 2008

Developer Community Growth

Tom (twrichar) asked the other day, "does anyone have any statistics on how the Plone DEVELOPER community may be growing, hopefully over a (recent), multiyear span?" There is one recent answer to this quesion: Chris Calloway's code swarms. They are a terrific way to visualize movement in the community. The code_swarm project page at Google explains what the video is displaying.

But if someone is interested in numbers, here are two that I've got. In October through November, 2007 I counted 45 participants in the Core Developers forum on Nabble. Repeating the exercise today for the interval 23 Oct. through 23 Nov. 2008, we find 75 core developers who have actively posted. That's a 60% increase in a year.

Other stats that I've been watching include the number of sites listed on Plone.net, which is now up to 1420.

The graph shows a very linear trend. At this rate we'll break the 2000 sites barrier before the end of 2009.

The fact that we have linear growth belies some statements I've seen by observers of the CMS scene who think that Plone has passed its peak and may be becoming a niche player (sorry, can't recall the exact citation).

Another metric of interest, also from Plone.net, is that the number of providers listed there has increased from 225 last March to 287 today. That's a 28% increase in 6.5 months.

I've also been tracking Plone releases. I've plotted them such that, for example, version 3.1.4 is placed at 3.14. That means major releases have ten times the weight of minor releases and bug fixes have ten times less weight than minor releases. My guess is that minor releases should have more weight.

At any rate the graph at left shows the zigs and zags of releases, where there is on-going support for one version (for example, 2.5) while another major release takes off (3.x).

The regression line has a slope of 0.001, which means there is 1/1000th of a major release per day. Taking the inverse, we have 1000 days (2.7 years) per major release.

This picture is complicated by the fact that 2.5 was clearly a major release. If we elevate 2.5 to major release status, it basically doubles the slope, changing release frequency to 1.4 years per major release.

Sunday, November 16, 2008

World Plone Day After-Action Report

As regular readers of this blog know, 7 Nov. was World Plone Day. If you hosted a WPD event, but haven't sent in your summary results, please go over to the spreadsheet at Google Docs and fill in your data. Thanks in advance.

Below is a draft press release that captures what we've learned so far from self-reported events.
With 66% of the event sites reporting in, the first World Plone Day can claim success. Friday 7 November was World Plone Day, a coordinated worldwide series of meetups, seminars, and workshops. Events were scheduled from Buenos Aires, Argentina to Hanoi, Viet Nam with a healthy representation in North America and Europe. Truly an international day of Plone, 30 countries on five continents were involved.

Plone is a ready-to-run, open source content management system that is built on the powerful and free Zope application server. Plone is easy to set up, extremely flexible, and provides you with a system for managing web content that is ideal for project groups, communities, web sites, extranets and intranets.

Forty of the 61 registered venues have reported in, showing a total of 982 participants who listened to 107 presenters. Extrapolating to those sites that have yet to record their guest count, perhaps 1500 participants world wide were engaged in learning about Plone. Over 40 companies sponsored events throughout the globe, which were sanctioned by the not-for-profit Plone Foundation, the legal owner of the Plone codebase, trademarks, and domain names.

Activities ranged from small, informal gatherings with ad hoc presentations to large, formal sessions with a half dozen presentations, refreshments, and door prizes. Brasilia, Brazil had the largest event with 128 attendees. Events were tied together in more than enthusiasm for Plone--live blogging, Twitter, and streaming video were all used to interconnect participants.

World Plone Day is anticipated to become an annual event to advocate the benefits of using Plone in education, government, non-profit/non-governmental organizations, and business. For more information, contact the Plone support lists.
Thanks to everyone for their participation and enthusiasm.

Friday, November 7, 2008

World Plone Day

WPD 2008 is here at last. In Albuquerque we're hosting an open house at our facility. Very informal with folks just dropping by, asking questions, and seeing what the system can do. Eleven attendees this morning (10:00 until noon). I'm expecting a fellow with a Python-external database problem to drop by later.

Meanwhile, there's a lull in the action, so I'll break for a quick bite. Twittering at http://twitter.com/Schlepp.

A few more post-lunch visitors made for a total of 14 attendees. Topics today ranged widely:
  • Comparing Plone with IBM's commercial CMS and JBoss
  • Plone for scientific and mathematical computing
  • Need for a corporate Python-Plone wiki and mailing list
  • Use of Plone by CIA, FBI, NASA, and other USG agencies
  • External RDBMS synchronization
  • Software management repositories and sharing them through Plone
  • Automatic code generation
On the first point, Plone looked very good by comparison. We created a portal for the questioner, configured site setup, and uploaded a custom logo, all in about 15 minutes.

On the last point we built a quick-and-dirty UML class diagram in ArgoUML, ran it through Joel's web engine, and had an archetype in no time.

One very good question we were asked was, "What else is Plone besides a CMS?"

Wednesday, November 5, 2008


Relief! What roller-coaster ride this election has been. Now its over and Obama is the next Prez. Can't imagine what would have happened in Chicago if he'd lost--125,000 depressed, suicidal Democrats turned loose on the streets.

Astonishment! The conspiracy theorists were wrong and the Powers That Be didn't steal the election. Americans have completely repudiated the last 8 years. Of course, it would have been a lot less painful if they'd done it in 2004. And the world would be a completely different place (for the better) if Gore had won in 2000.

With yesterday's election behind us, now is the time for new beginnings.

"Hello, this is the United States Government technical support. Have you tried rebooting?"
For the first time in years I can feel proud in something that we as a nation have done... together. I can stop "eating bitter."

We have executed the first line of the computer algorithm for getting one's self out of a hole: we have stopped digging.

Programmed in Python it might look like this:

from previousAdmin import war, civilLiberties, globalFinances

def exitHole(self):
Obama.elect(self, nation)
war.reset('Iraq', 'Afghan')
civilLiberties.reset('habeus_corpus', 'Geneva_convention')
globalFinances.reset(self, 401k)
print "Oh, my good god!"

Now on to World Plone Day!

Saturday, November 1, 2008

Drupal -- Plone -- DotNetNuke

I've been playing around with a logo for the blog and came up with this. It also might be useful for the Plone Metrics and Statistics group over at OpenPlans. It does occur to me that its a repurposing in part of the Plone logo, so I should check with the Plone Foundation about the proper way to handle this.

Today's topic is the Packt Publishing Awards now that the overall winners have been announced. Something doesn't seem quite right. The logic of the matter goes like this:
  1. In the non-PHP category Plone was first, dotCMS was second, and DotNetNuke was third. Thus, Plone ranks higher than DotNetNuke.
  2. In the PHP category, its Drupal > Joomla! > CMS Made Simple.
  3. In the overall category, it turned out Drupal > Joomla! > DotNetNuke.
Hmm? Recall that Plone was a finalist in the overal category. Since from (1) above Plone ranked higher than DotNetNuke, one could infer that it should be somewhere to the left of DotNetNuke in (3). The question becomes, where did Plone end up in the overall category and why was it not ranked higher than DotNetNuke? Or put another way, why didn't DotNetNuke beat Plone for the non-PHP title?


From the inconsistency in the results, we can't compare Plone with Drupal and Joomla!. How can Plone be ranked simultaneously both higher and lower than DotNetNuke?

The answer may lie in the fact that the Packt voting process separates the votes for each category. I would suggest that DotNetNuke fans voted well in the overall category and then forgot to punch in also for the non-PHP category. Does this mean DotNetNuke voters haven't noticed that their favorite CMS isn't PHP based? Or perhaps Plonistas only voted in the non-PHP category and didn't go to the overall section.

But then there's another factor at work here: Packt judges used an undisclosed method in addition to the popular vote to rank the contenders. I have no idea how number of Packt titles (Drupal 9, Joomla 9, DotNetNuke 3, Plone 3), sales figures, and so on might influence the judges. One might expect that the Packt Awards are foremost meant to benefit Packt by selling more books. In the absence of a public, objective methodology and with the inconsistent ranking of Plone and DotNetNuke, one can only guess.

Whatever the actual phenomenon, it points out that one can take these kinds of popularity contests only so far. Yes, we can now market Plone as the top non-PHP CMS for 2008 and that has a certain cachet. And I'll admit I was thrilled to see Tuesday's result roll in.

But deep down, it isn't popularity that should guide your software choices. True, highly popular systems will likely have more consultants, a larger professional base, and possibly a longer useful life. But that doesn't guarantee that the popular use-case is going to match your use-case. Other requirements need to be factored in--your internal support capabilities, deployment platform, user environment, security, overall goals, and many other needs.

In my case, our predisposition for Python and the need for a secure system were the key factors that drove us to Plone. The National Vulnerability Database lists ten records for Plone over the last three years. Drupal shows 158 records; Joomla! 265. Or put another way, "...it's striking that three [Drupal, Joomla!, Wordpress] of the Top Ten contenders on IBM's security worry-list have PHP in common. You can read whatever you want to into that, I suppose." (Kas Thomas, 8/2008)

For me, that's the end of the voting.