Project Management

10 06 2010 : Design principles for creating Good Classes let you write Good Drupal Modules.

Drupal is not object oriënted (OO). No really, it is not! It merely borrows some design principles from OO, and uses some design concepts (such as the Observer Pattern, or hooks, in Drupal) from OO. Though many Module developers actually use another design principle, that of Classes. When creating a module, one can borrow almost all ideas from the (good) design of classes, to create a good design for a module.

Maybe you think: “Why should I design my module”?


19 04 2010 : The first rule of coding for Drupal: never forget about the option to write your own code.

yelvington writes: “The first rule of coding for Drupal: We do not write code for Drupal.” I must say, that after years , I come to the exact opposite conclusion. Right now, I should be writing another webshop (instead I am writing a blog-post, but this article is not about procastrination :)).

I was one of the most outspoken for getting the first CCK, flexinode into core. Not that project itself, per sé, but the concept.


15 04 2010 : "Pick up where you left last X" by not committing last changes, good branches and pseudocode.

When programming, you often need to carry a single task on to the next day, or till “after the meeting” and such. I experimented and found a good method, to pick up where I left.

Working the GTD way, well documented code, a good software architecutre all help keeping a project in line, up to speed and manageble. But it does not solve one thing, though: “picking up where you left”.


20 02 2010 : Git mirror for Basetheme Genesis

The fabulous basetheme Genesis is now mirrored on Git.

This has several advantages. A basetheme is used as scaffolding for your own theme. During upgrades and bugfixes, however, your altered version will be hard to keep in sync. Usually this costs a lot of manual labour; eliminating one of the advantages of a basetheme: continuous re-use of existing work.


16 02 2009 : Localization server local pakage generator from SVN (hacked up script)

Unless I missed a feature entirely, Drupal Localization Server does not really allow packages from external sources to be parsed in its “local package connector”. It only eats tarballs with the exact names as they are released from Drupal.org. For example tagadelic-5.x-1.2.tar.gz and nothing else. Well, off course the 5.x-1.2 can vary.

I therefore hacked up an ugly script that we run in a cron to grab our REL-5.x-1.1 from our SVN. Our subversion repository-layout is rather hardcoded in the script, but since it is not that exotic, it should be easy to change it. This script runs over a loca working copy of our SVN and grabs the tags (aka SVN releases) and then tarballs them with the filenames that the local package connector will recognise.


08 02 2009 : Wizzlern, the new Dutch Drupal Trainers, but how to share?

Erik and I (Bèr Kessels) decided in December last year, that the Netherlands needed a Drupal trainingshop. And that we are going to run it: Wizzlern. We are not the first Dutch trainers, bytheway; our friends at Krimson run the first Dutch trainingshop. But they are situated in Belgium, and we in the Netherlands.