Bristol Drupal Users Group

As i’ve been doing a few projects with Drupal recently I’ve set up a google group for people in the Bristol (UK) and surrounding area:-

http://groups.google.com/group/bristol-drupal

For anyone wondering if this means i’m deserting Plone, the answer is no – i’m also working on a couple of Plone projects too! I will post an article when I get time outlining my experiences of both – comparing and contrasting the development.

new toy – casio elixim Z1050

I recently bought a new compact camera – a tiny casio elixim Z1050. Historically I have always been disappointed with the performance of compact digital cameras, mainly because of shutter lag. This one is much better, with only a tiny lag at 10 megapixels. Although one day i’d like to get a digital SLR, for now I just wanted a compact to carry with me to snap pictures I can use for web sites, and also to take a few skateboarding pictures. One feature that has proven to be excellent for the latter is the high-speed continuous mode with takes several shots a second at 2 megapixels, allowing me to grab a sequence (like below, or just take the best frame from several, to get the best action shot.)

rick hurst sequence taken by casio Z1050

Best frame – original pic is 2 megapixels – fine for snapshot prints and web stuff:-

rick hurst fs disaster on st george whippy bank

archived comments

I wish I was skateboarding there, that looks so fun.

sirjorge 2007-12-18 00:23:33

Interesting debate about TTW support in plone

Even though I seem to have slipped off planet plone recently (design or accident? – must find out!), i’m fascinated by the current debate about Through The Web (TTW) support in Plone. I must admit I have noticed a general “TTW is bad” vibe from hardcore Plone developers – in fact i’ve heard it said outright on many occasions. As a Plone integrator/ general web developer I can see the pros and cons of TTW, but i’ve certainly seen it as a selling point of Plone – people commissioning a CMS, even for a large corporate site or intranet often get excited at the possibilities of being able to make customisations and additions themselves without having to get expensive developers in to make changes – and why shouldn’t they? I’ve also been a position where i’ve taken on a few customisations of Plone sites where the most of the site lives in the custom skin layer, edited TTW and it is a great way to make minor amends on the fly, and something that i’ve always liked about plone, even though I am fluent with file system development.

archived comments

exactly. and now imagine a TTW implementation that lets you (still) do all that *and* plays nicely with filesystem based development. surely something desirably, no? 😉

and on a side note: i do hope to see more plone related things from you again… perhaps we might even meet again at a sprint or conference again… any chance of that happening?

Tom Lazar 2007-10-20 23:24:10

Hi Tom, sounds good to me 🙂 And yes I am still working with Plone – currently on an Intranet project where Plone was the natural choice, and I hope to be at Plone conf next year if it doesn’t coincide with my kids birthday like it did this year!

Rick 2007-10-21 08:52:12

what a coincidence… my oldest kid’s birthday was just one day before i left… it seems he had a wee bit better timing than yours 😉

Tom Lazar 2007-10-22 21:16:40

OK maybe this Zope object database makes sense now..

I’ve just made a breakthrough in my perception of Zope and its object database. Despite the fact I have been working with Plone for over three years i’ve always struggled to shift my way of thinking away from relational databases and SQL queries, due to my previous experience of building sites and applications mainly with asp (classic) and php, hooked up to a relational database.
So what caused my Eureka moment? A combination of:-

a. Not developing with plone for a while

Since going it alone I have been doing an eclectic mix of work for different agencies and companies, who all have their own pet technologies and ways of working (so far I have slotted straight into them all with a minimum of fuss- Jack-of-all-trades at your service! Except Perl. I had to turn that one down).

b. Doing a bit of old school Zope

From the moment I started with plone, when I haven’t been skinning/ templating, I have worked almost entirely with Archetypes. Archetypes generates forms for you and all the other “magic” – some lovely helpful magic, some dark voodoo that shouldn’t be spoken aloud in front of non-programmers (like me). This means that with Zope I never learned how to do a typical build a form that posts to script, script writes to database, script pulls out of database and renders it back in the page/form routine, which is usually the first thing I would learn with any other web technology/scripting language.

c. Starting to think in objects

Once again, this had more to do with not working with zope for a while. Before zope I only had a basic understanding of objects and only used them where I was forced to because I was working with someone elses code. I would encapsulate functionality by sticking a load of php/asp functions in an include file with a meaningful name, but I never took the step of wrapping them up in a class and treating the piece of functionality as an object. Something must have sunken in during my Zope years, because now I find it difficult to not think of something as an object.

So, i’m rambling – what exactly was my moment of clarity? It was simply adding a few extra fields (wait – properties) to portal_memberdata and personalize_form in Plone. I went off searching for the python script that would take the data out of the database and pump it into an object for me to use again in a page template – but of course, being stored in the ZODB, it already was an object. Z.O.D.B. Zope Object DataBase – geddit?

So in summary, I think anyone new to plone development could do with learning things the “old” way before they move onto developing with Archetypes – purely for the sake of demystifying the ZODB, especially if like me you come from a php/asp background and have trouble understanding why you would use an object database rather than a relational database.

Next stop Zope 3 – I’ve read several reports about the large amount of boiler plate code needed to create something fairly simple with Zope 3, and a few solutions to speed up the process, but I will definitely make sure to understand how it is done “manually” before attempting to move onto using any shortcuts this time.