Plone Symposium East 2011
This is a slightly tardy write-up of my trip to Plone Symposium East 2011, hosted by the Weblion group at Penn State University, USA.
In it's 4th year, this is now probably the largest Plone event outside the main annual Plone Conference, with around 100 participants this year. The event follows a tested pattern of a couple of days training, followed by two days of talks for the main conference, and then two days of developer sprints. I was kindly invited over by the organisers to present one of the keynote talks at the event.
I flew from Bristol to New York (JFK) via Dublin, a new route started by Aer Lingus in which you clear US immigration in Dublin airport, so get out quicker when you hit New York. I then picked up a rental car and drove from NYC to State College, Pennsylvania. State College is pretty much in the middle of nowhere, but then this really shows my lack of scale sometimes. The state of Pennsylvania alone is around half the area of Great Britain and despite the 'East' in the name of the event, there were attendees from all over the US. The distance from San Francisco to State College is roughly the same as from London to Cairo. So middle of nowhere really is relative!
I arrived on the eve of the start of the main conference days, and had a chance to meet up with some familiar faces of the Plone community at (where else?) a local microbrewery called Ottos. Wandering in slightly dazed and jet lagged, and staring around a large pub looking for people I was glad that Carol Ganz from Six Feet Up managed to spot me and was waving like crazy. So a good start, I tucked in to a local ale and some hot wings.
Talking to Steve McMahon (Reid-McMahon) and Chrissy Wainwright (Six Feet Up) who both had run training sessions the days before it seemed the training had gone well and had good attendance. Training is one of the most valuable aspects of the Plone events worldwide for those new to Plone as they offer an amazing value way to get up to speed as quickly as possible. Even if you have to figure in travel costs, with the training costing only a few hundred dollars a day it works out very economical. Chatting to one person who took the training he said "I've been working with this for a while now, and it suddenly all fell into place and made sense".
The first day of the conference started off with a keynote by Joel Thierstein of the Connexions project (the largest Open Education resource around) on Moving to Mainstream: Connexions & Plone in Everyday Education. With the event being organised and hosted by Weblion, part of Penn State University, there was of course a natural leaning towards attendees from other colleges and universities across the country. So Joel's talk was an apt opener to the event and set the scene on the changing nature of learning and the role of Plone in that process. In chatting to Joel afterwards a gentleman called Michael Wunderlich came up to introduce himself and talk to Joel about the School of the Air in Australia and how a link up between them and Connexions could be of great benefit. For those that don't know the School of the Air is probably one of the oldest examples of distance learning facilitated by technology I know of. Starting in 1951 it consisted of school lessons delivered over shortwave radio into the remote areas of the Australian Outback. Australia is in the process of rolling out its National Broadband Network which will provide fibre to the premises for 93% of the population, and 12Mbps satellite coverage for the remainder. With initiatives such as Connexions out there, the next generation of School of the Air could have amazing impact and reach.
Incidentally, Michael wins the award for the furthest distance travelled to PSE11, flying from Adelaide to Sydney to Taipai to Osaka to New York then a bus to State College! This really shows the draw of the Plone community and its power worldwide. When I mentioned this on Twitter, Dylan Jay from Pretaweb in Sydney piped up "we are so far away that to go some place else we are already halfway to anywhere so what's the difference."... I guess as I said, distance really is relative!
The rest of the day continued with two parallel rooms running, with talks ranging from Marketing Plone to theming to evaluating add-ons. The full schedule of talks and links to videos of the talks can be found here. One talk I specifically attended was Mark Corum's talk on "Marketing your Plone Business", in which Mark set out some great tips and then opened the floor up for discussion in which people were then able to pick his brains about various specific marketing questions they had.
After lunch, talks continued on throughout the afternoon in both rooms. One particular hidden gem came from Alan Runyan's talk on "Evaluating Add-ons, Configuration & Metrics". Alan mentioned a package they developed called enfold.stats that logs various stats per request to a log file, such as time to render a page, ZODB reads, writes, etc. Very useful for ensuring you are not writing to the ZODB when you don't think you should be.
After the talks people broke into groups to head in to town for dinner. One of the parts I always enjoy at Plone conferences and gatherings in the chance to sit down and chat to people over dinner. You alway end up with such a diverse group of people and great discussion.
The Six Feet Up crew had rented a house not far from the conference, and had bought a couple of kegs of local beer, so naturally we all gravitated that way for further drinks, chat and general merriment there. I didn't stay long that evening, as I was delivering my keynote the next morning, so stuck to just the one beer ;)
The next morning started off with my keynote: "Plone: a Solution, Not a Product". I gave a preliminary version of this talk a few weeks ago in Sorrento in order to gain some feedback. I was working on the presentation on the flight over and realised that whilst I had a lot of concepts it didn't really all tie together, so set about rewriting most of the talk.
The talk started with a comparison of the way in which the relationship between vendor, integrator, and customer works in the commercial/proprietary CMS world and the community Open Source world. I then went on to talk more about the Plone community -- sometimes we take for granted just what an amazing community we have and its diversity both geographically and within different industries.
I also did a brief lightning talk during the lunchtime lightning talk slots about a Kerberos PAS plugin we are developing at Netsight, and the ability to do Windows Integrated Authentication in a manner more flexible than delegating it to IIS. We have yet to work out how we are going to release this plugin, but if anyone is interested then get in touch.
After lunch I managed to catch Clayton Parker's talk on "Migrating from Drupal to Plone with Transmogrifier (slides)". As someone who has just been using Transmogrifier recently and getting my head around it for migrating an old and very custom Plone 2.5 site to Plone 4.0, I was really interested in Clayton's experiences. Clayton showed how he used Transmogrifier to read data from a MySQL database used by Drupal and import the content into Plone. The most amazing part of all this? He didn't write a single line of code. OK, so there was a fair amount of configuration written, as you would expect with using something as flexible and generic as Transmogrifier, but not a single line of python was written. A video of Clayton's talk is on PSU's streaming server. Also check out his previous talk on Transmogrifier at Plone Conf 2010 for more background (slides, video).
After the talks of the second day, was an Open Spaces session, with groups of people breaking off to discuss and present topics chosen by them on the fly. The Plone Foundation board of directors has a teleconference every two weeks, and our call happened to fall right at this time. With four of the seven directors at PSE, we decided to hold an 'open' meeting at which anyone from the conference could come along and listen in on the call and get a feel for the (generally whilst essential, fairly mundane!) things that we get up to on these calls.
One area that the organisers got working well really well this year was the videos of the talks. These were captured using a set of Open Source tools that they had assembled themselves and over the years have now refined to a very tidy setup. The video was streamed live on Justin.tv and also captured for high quality uploads to be put up later. They will be publishing more details of their setup in due course. Hopefully this is something that other conferences can take up and use.
Dinner that evening for those that were staying on beyond the end of the main conference days was at 'Spats' a local restaurant serving New Orleans food. I never made the first Plone North American symposium, which was held in New Orleans, and never been to the city for real, but the food at Spats was amazing.
Of course we couldn't come to Penn State and not visit their world-famous Creamery. So after dinner, we swung by there to have what has got to be the best ice cream I think I've ever had. I did wonder about trying to bring some back, but didn't know what airport security would think of twenty 100ml bottles of ice cream! Oh we also had a chance to pick up Penn State's other famous delicacy... some Grilled Stickies (defibrillator not included).
Again, I ended up back at the Six Feet Up house at the end of the evening, helping them finish off the beer they had ordered ;)
The next two days were the post-conference development sprint, dubbed the 'Rapture Sprint' due to the world supposedly meant to be ending whilst we were coding. I was able to stay for one of the days, and it was probably the largest proportion of attendees staying on for the sprints I think we have had, with around 45 people working on improving Plone.
I was working with Eric Steele on creating plone.phonehome based upon the phone.home code by Nikolay Kim at Enfold System. He had written most of the client code. Eric and I wrote a Google App Engine app for receiving the results of the client. The idea here is to have a system where we can (anonymously) log the versions of packages that Plone instances have installed. The purpose is to be able to give feedback to 3rd party product authors as to how many people are using their product and which versions; and also to give stats of the core of Plone itself. We are hoping to integrate this into plone.org in due course to that you can see how popular a product is from its page on plone.org. Neither Eric nor I had created a Google App engine app before and it was quite a nice and simple experience. It took us a bit of time to understand their data store, but once done it was all pretty simple.
My flight took off at 5:45pm EST... just before the world ended. I'm glad to say it didn't.
Thanks to the Weblion team for putting on such a fantastic event, and for the Plone community for being so awesome.