The Drupal Site Builder Manifesto
I wanted to get some clarity on what I mean
by the term "site builder". In a general sense, it refers to the
actual process of building a website, but in Drupal the term
Site Builder tends to have a specific meaning.
I realised that my definition may vary from others so
I wanted to be precise about what I think it means, and what
I think it means to be a Drupal Site Builder.
I am a developer. I studied programming languages in depth. I did research into the semantic analysis of object oriented languages. But, when it comes to Drupal, I love to be a Site Builder.
I run a Creative Coding Meetup in London. At last night's meeting I
was explaining Friday's Drupal Camp training to someone.
I am clear about the aims
and objectives of the training, I know my material, and I've
given similar trainings many times before, but,
the fact I labelled it an "intermediate" and "site builder"
training causes some confusion.
First of all, I realised that using the word "intermediate"
doesn't really mean anything. Drupal developers (or anyone
building Drupal sites) of all skill levels have benefited from this training. So, perhaps what I mean by "intermediate" is
actually "not beginner". As all I am really saying is that I'm
not covering the very basics of getting Drupal up and running.
The term "site builder" is more problematic, possibly because
my definition of a Drupal Site Builder may be wider than
what most people expect. I thought about this a lot, and what I came up with was a clear set of statements of what I think it means to be a Drupal Site Builder...
The Drupal Site Builder Manifesto
As Drupal Site Builders...
We work in a multi-disciplinary role.
We take initiative, and play a central role in the web development process.
We are usually the ones to take ownership of the final product.
We don't just “click and configure” websites. We have knowledge of all the areas involved in building a Drupal website.
We work with the rest of the team to ensure everyone is doing what they do best and contributing to the project in a meaningful way.
We may not all be trained developers, but we do appreciate how to think like a developer. We apply software development principles and Drupal best practises when creating Drupal configuation.
We may not all know how to write optimal PHP code, but we know when to build something using Drupal core or contributed modules, and when we need a custom plugin or custom module creating.
We may not all be able to produce the most stunning web designs, but because we understand how Drupal works we will work with designers to ensure their designs are consistent and well structured.
We may not all know all the latest front-end tricks, but when given well build front-end code we know how to get Drupal to generate the appropriate markup.
Most importantly, we know how to get the best results out of Drupal's building blocks, we know how to turn good designs and ideas into great websites, and we know how to build websites in a methodical, flexible, and maintainable way.